2010-12-22 115 views
2

我正在使用datetimepicker顯示日期(從數據庫中檢索)。我已經在幾臺機器上運行我的應用程序,並且我發現在Windows XP SP2上,可以檢索並顯示的最大日期是2020年,但對於更高版本的操作系統,最大日期可能更高。有人知道這個問題嗎?C#DateTimePicker Max日期範圍

謝謝你的幫助。 Jing Jing

回答

2

您可以使用DateTime.MaxValue屬性檢索最大可能的日期,具體取決於系統。如果由於溢出而導致讀取日期時遇到問題,可以使用DateTime.TryParse()方法嘗試讀取該值而不引發異常。

更新: 馬蒂尼奧是正確的。從MSDN:

一些掛曆,如 UmAlQuraCalendar,支持早於 的MaxValue上 日期範圍。在這些情況下,嘗試訪問 變量 中的MaxValue賦值或格式和解析 操作可能會拋出 ArgumentOutOfRangeException。而是 不是檢索 DateTime.MaxValue的價值,你可以檢索 從 System.Globalization.CultureInfo.DateTimeFormat.Calendar.MaxSupportedDateTime 屬性指定的區域性的 最新的有效日期值的值。

因此,請使用System.Globalization.CultureInfo.DateTimeFormat.Calendar.MaxSupportedDateTime字段來獲取系統支持的最大日期值。

+1

對不起,但不是,DateTime.MaxValue不依賴於系統。 DateTime.MaxValue是23:59:59.9999999,9999年12月31日,也就是說,在1月1日00:00:00之前1納秒,也就是說,3155378975999999999 刻度。 – 2010-12-22 17:33:26