【问题标题】:DateTimePicker: Use neither calendar nor spin buttonDateTimePicker:既不使用日历也不使用旋转按钮
【发布时间】:2012-06-13 20:41:50
【问题描述】:

我想利用DateTimePicker 的日期验证功能,但日历对我们的客户来说设置日期似乎很麻烦(他们宁愿只使用键盘,在表单中按标签)。

所以我仔细查看了documentation,发现摆脱日历的一种方法是将ShowUpDown 属性设置为true。所以我得到了这个:

但是,我们的客户现在说他们不想使用旋转按钮,因此他们不希望它可见/可访问。即他们想要这个:

但是,如果我将 ShowUpDown 设置为 false,我将返回日历。还有其他方法吗?

【问题讨论】:

  • 我发现的唯一其他方法是创建自己的自定义控件。我需要一个日期选择器,用户必须明确按下“向下”图标才能打开日历。因此,在切换到控件时的默认行为是通过键盘输入日期。我还希望用户能够不选择日期(Nullable Of Date)。
  • 看起来那样。为什么他们不能为此添加一个枚举属性?使用 {Calendar/SpinButton/None} 值。
  • 你使用继承还是组合?还是你自己把整个东西都卷起来了?
  • 我刚刚使用用户控件中的文本框和按钮控件自己创建了它。该按钮下拉一个 MonthCaledar 控件。我必须自己做所有的验证。

标签: winforms .net-4.0 datetimepicker


【解决方案1】:

不得不推出我自己的自定义控件。幸运的是,团队中的其他人已经编写了自定义控件,所以我有示例代码可以开始。无论如何,如果我必须自己做这种事情,框架有什么用?希望他们在 .net 4.5 中解决了这个问题...

编辑:使用带有 ValidatingType = typeof(System.Date) 的 MaskedTextBox 是更好的解决方案。对不起.NET!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 2013-06-19
    • 1970-01-01
    • 1970-01-01
    • 2022-07-06
    • 1970-01-01
    • 2015-10-06
    相关资源
    最近更新 更多