c# - Winforms .net Datepicker 不遵守 24 小时格式?

标签 c# .net winforms datetimepicker

我有一个格式为 HH:mm - 24 小时制的时间选择器 (datetimepicker)。它显示为 00 到 24 和 00 到 59,并且不允许输入无效值。这正是我想要的。

但是,它返回值为 12 小时,带有 AM 和 PM 指标。这意味着当用户输入“00”时,它返回为“12”,而“14”返回为“2:00”。这不是我想要的。

我可以测试并转换这些不需要的返回值,但是肯定(?)有一种更优雅的方法可以说服这个东西给我我想要的值而不是检查这些特殊条件?我可能忽略了一些简单的属性?

最佳答案

您如何从控件中获取输入的时间值?

如果您有一个 DateTimePicker 控件并设置它的 Format Custom 的属性,及其 CustomFormat属性设置为 HH:mm,当您阅读 Value 时,您将获得 24 小时制时间(作为 DateTime 类型)属性(property)。

编辑:如果您使用的是 ToString() 值(如您在上述评论中所说),这将使用您当前的本地化设置。您最好从 DateTime 中读取值(即 DateTime.Hour DateTime.Minute)。

关于c# - Winforms .net Datepicker 不遵守 24 小时格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3114402/

相关文章:

c# - 特殊小数格式

c# - MVC 局部 View

c# - 机器人遇到错误或错误。要继续运行该机器人,请修复机器人源代码

c# - 为什么 InvokeRequired 优于 WindowsFormsSynchronizationContext?

c# - Windows 窗体 ComboBox 导致间歇性 System.AccessViolationException

c# - 如何获取Windows窗体中的按钮控件 - Panel

c# - 如何从 ViewModel 调用 TreeView 上的焦点

c# - Sitecore 中未发布/限制的项目显示标准值

c# - 为什么 IEqualityComparer 没有相应的委托(delegate),而 IComparer 有比较

.net - 绑定(bind) DataGridView 的自定义排序