0

我们确保我们的应用程序可以在 Windows XP 的 Windows 7 中运行。其中一个使用 System.Windows.Forms.MonthCalendar。显示完全不同。

日历有一个 MaxDate,在 XP 版本中我们可以看到所有日期但不能选择它们。在 Win 7 中,无法选择的日期不可见。

是否可以显示所有日期?
我找不到有关此更改的官方微软声明。

XP与Win7

在此处输入图像描述 在此处输入图像描述

4

1 回答 1

2

是的,MonthCalendar 是 Windows 中的常用控件之一。它与 TreeView 和 ListView 位于同一组中,您肯定注意到它们看起来也不同。和 Common Dialogs 的表亲,请看 OpenFileDialog。您跳过了 Vista,这就是 MonthCalendar 获得新外观的时候。

这是微软为 Windows 版本赋予不同外观并在标准 Windows UI 元素的可用性方面进行创新的方式。重度称重和疼痛,并经过用户测试。您也将自动获得相同的外观,您无需在代码中执行任何操作。这是一个非常好的功能,您的用户现在将立即如何使用您的程序,因为它的外观和工作方式与她使用的任何其他程序一样。

试图倒带时钟是一个坏主意。您的应用程序看起来就像在上个世纪被遗忘了,绝不是您想给付费客户留下的那种印象。并且将与使用日历的任何其他应用程序截然不同。您可以使用 SetWindowsTheme() 来覆盖视觉样式,但这会使时钟回到 1999 年。不要这样做。

于 2012-10-18T21:16:53.723 回答