.net WinForms-Server2003与Server2008的DateTimePicker默认月份选择行为?

.net WinForms-Server2003与Server2008的DateTimePicker默认月份选择行为?,.net,winforms,windows-server-2008,windows-server-2003,datetimepicker,.net,Winforms,Windows Server 2008,Windows Server 2003,Datetimepicker,下午好 其他人是否注意到标准WinForms DateTimePicker控件中“下一个”和“上一个”月份箭头的默认行为发生了变化?我有一些用户同时在Windows Server 2003和Windows Server 2008 R2上运行,他们报告说,在2008年(和Vista/Win7)上,单击下拉日历上的右箭头或左箭头现在会选择一个月的第一天,而不是像2003年(和XP)那样保留同一天 我已经检查过了(我有一台Win7机器),并且我已经确认了这种行为。我希望行为尽可能保持一致。有人知道这是

下午好

其他人是否注意到标准WinForms DateTimePicker控件中“下一个”和“上一个”月份箭头的默认行为发生了变化?我有一些用户同时在Windows Server 2003和Windows Server 2008 R2上运行,他们报告说,在2008年(和Vista/Win7)上,单击下拉日历上的右箭头或左箭头现在会选择一个月的第一天,而不是像2003年(和XP)那样保留同一天

我已经检查过了(我有一台Win7机器),并且我已经确认了这种行为。我希望行为尽可能保持一致。有人知道这是什么原因吗?有没有办法解决这个问题?是否有办法捕获箭头单击事件,并强制结果日期保留原始日期,而不是重置为月份的第一天


我想看看是否有办法在MouseUp事件中点击测试控件,确定是否单击了箭头按钮,然后覆盖所设置的月份值,但我不确定这是否可行。谁能提供一些智慧或洞察力?谢谢

DateTimePicker是本机Windows控件,.NET类是它的包装器。是的,自Vista以来,该本机控件的外观发生了一些变化。您不应该修复行为,用户会认为您的控件具有非标准行为,因为它的行为与在该操作系统上运行的不同程序显示的所有其他控件不同。

没错,但我的用户群很小(仅限于我工作的公司),正是他们引起了我的注意。我确实在其他应用程序中使用了DTP,一般的想法是,如果有一个补丁或黑客可以做到这一点,那么我可以为控件编写一个扩展,或者只是将代码应用到我使用控件的任何地方。当然,如果没有解决办法(我昨天花了相当多的时间尝试了很多不起作用的东西),那么他们就必须理解(即使我没有(-:)。谢谢,汉斯。这很有意义。是的,没有好的方法来解决这个问题。除了对月历进行分类的困难外,MCN_SELCHANGE消息不能让您准确地发现所选日期是如何更改的。当切换到Win7时,每个人都会停止抱怨。我还注意到在下拉模式下,e ComboBox也发生了变化。过去,您可以通过文本搜索或箭头键选择所需的项目,然后在仍处于下拉状态时将tab键移出控制,并使值保持您导航到的值。现在,如果您不按Enter键接受该值,则在您退出tab键时,它会选择下一个值。如图所示。。.