winforms - WinForm DateTimePicker 忧郁。那是我吗?

标签 winforms datetimepicker

我希望能够使用 DateTimePicker 控件接受 NULL 日期。

“Checked”属性似乎旨在指定控件是“保留日期”还是现在。但是,当“未选中”时,日期仍然显示,尽管它显示为已禁用。对我来说,这让人分心。如果未选中的复选框的目的是表明没有日期值,为什么文本框中会出现禁用或其他日期值?在我看来,如果未选中该控件,则文本框应该为空,并且当用户真正想要“无值”时看到变暗的日期值会分散注意力。

如果用户打开复选框,那么我希望能够将默认值放入文本框中。

我正在考虑创建一个在 dateTimePicker 控件和 textBox 之间切换的用户控件,但我讨厌经历这个麻烦。

我尝试寻找 Telerik 的 DateTimePicker,但试图从该控件中获得像样的空处理功能似乎更糟糕。我很想看到一个工作示例,说明你们认为是一个用户友好的代码示例,其中包含接受空输入的 std MS 或 Telerik DateTimePicker 控件。

我研究过一些开源控件,但每次他们解决一个问题时,都会引入其​​他问题。

编辑:

请参阅下面我的回答。它似乎工作得很好,现在我只想让它成为每个 DateTimePicker 行为的一部分。

最佳答案

我也遇到了同样的问题。好吧,实际上我很聪明,可以理解,但我的用户遇到了问题。

我通过删除复选框并添加 2 个单选按钮来解决。现在看起来像这样:

(使用伪 UI)

O No value entered
O | 1/1/2010   |V|

当没有值(空)时检查顶部单选按钮,当有值时检查底部单选按钮。我没有隐藏或禁用底部控件,用户似乎也理解。

缺点是,它需要更多的空间。

PS:用户接下来会提示的是当组合框获得焦点时使用滚轮。

关于winforms - WinForm DateTimePicker 忧郁。那是我吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4410217/

相关文章:

.net - 使 WebBrowser 控件删除其缓存

java - 一个对话框中的 Android 日期时间选择器

c# - 异常 :Failed to convert parameter value from a string to a datetime

jquery - Eonasdan 的 Bootstrap-Datetimepicker 无法在模态中工作

c# - 你如何在winforms中使用通用对象绑定(bind)?

c# - 通过 Win + M windows 快捷方式最小化无边框窗体

c# - 将线程安全的 UI 访问器保持在 c# 中的单独类中

xcode timePicker 返回错误的时间

javascript - 日期时间选择器上的更改功能无法正常工作

c# - 如何在 richtextbox 滚动条背景上突出显示选定文本的相对位置