.NET Winforms中一个很好的方法让用户进入时间范围?

Ben*_*Ben 4 .net c# vb.net winforms

有没有人知道让用户使用winforms控件输入一定时间(小时和分钟)的好方法?目前我有两个数字上升,一个用于时间,一个用于分钟,然后我解析以创建一个时间跨度.我唯一的另一个想法是一个文本框,用户可以输入"00:00"时间,并验证输入.但是这两种方式看起来都有点糟糕(用UI术语).

有任何想法吗?

谢谢

adr*_*nks 10

在UI中表示输入时间绝非易事.在Windows中查看输入时间的两件事:

  1. 添加新的计划任务:
    添加新的计划任务
  2. 更改系统时间:
    改变系统时间

这两个都使用自定义文本框类型控件,您可以在其中键入值,或使用向上/向下控件来更改值.这些可能是最好的妥协.

您可以使用内置的DateTimePicker控件自己实现此目的,然后更改CustomFormat属性以匹配您想要的格式(即HH:mm,例如小时和分钟).所述ShowUpDown属性也可用于选择性地显示所述旋转按钮控制如在上面的图片.


And*_*y E 8

您可以使用MaskedTextBox.这将允许您有一个输入框,其格式基于您选择的掩码(例如__:__).如果时间量可能超过24小时(DateTimePicker控件不允许您输入),这将非常有用.