我正在使用显示日期(从数据库检索)的DateTimePicker。我已经在几台机器上运行了我的应用程序,发现在Windows XP SP2上,可以检索和显示的最大日期是2020年,但是对于以后版本的OS版本,最大日期可以更高,例如2999.吗?知道这个问题吗?

谢谢您的帮助。 Jing Jing

有帮助吗?

解决方案

您可以使用datetime.maxvalue属性来检索取决于系统的最大可能日期。如果您由于溢出而读取日期的阅读日期存在问题,则可以使用datetime.tryparse()方法尝试读取该值而不抛出异常。

更新:马丁尼奥是正确的。来自MSDN:

一些日历,例如umalquracalendar,支持比MaxValue更早的上限范围。在这些情况下,尝试在可变分配或格式化和解析操作中访问MaxValue可以抛出grognalOfrangeException。您可以从system.globalization.globalization.cultureinfo.dateTimeFormat.calendar.calendar.maxsupportedDateTime属性中检索指定文化最新的有效日期值的值,而不是检索DateTime.maxvalue的值。

因此,使用 System.Globalization.CultureInfo.DateTimeFormat.Calendar.MaxSupportedDateTime 字段以获取系统支持的最大日期值。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top