3

我正在重新编写 C#DateTimePicker (nullable)以满足我的需要,但我一直在检测从 pick time 开始的 up-down 事件(HH:mm, DateTimePicker.ShowUpDown = true)

我知道OnValueChanged当按下向上或向下按钮时会触发,但我已经在那里进行了一些处理(当在 DateTimePicker 中输入数字时自动移动到下一个字段),因此我需要阻止 ValueChanged按下这些按钮时的事件,并在不同的功能中处理它。

我正在尝试覆盖 WndProc 函数,但在 WndProc 之前调用了 OnValueChanged。OnKeyDown 在 OnValueChanged 之后也被调用。

有任何想法吗?

4

2 回答 2

0

好吧,您可以尝试覆盖OnDropDown在请求下拉日历时发生的情况。

于 2012-10-29T12:26:33.977 回答
0

ValueChanged当值DateTimePicker更改时,您不应该阻止事件。向上向下按钮用于更改DateTimePicker值,因此按下它们应该引发ValueChanged事件。

考虑更改您当前对此事件的处理方式。

顺便说一句,当值更改时,为什么要导航到下一个字段?只需为您的控件分配适当TabIndex的值,并允许用户使用Tab按钮导航到下一个字段。这是一种常用的导航方法。

于 2012-10-29T12:34:01.313 回答