我正在构建genealogical tree app,我需要超过此日期。我更喜欢DateTimePicker而不是TextBox + text-date转换。
有没有规避这个限制?
答案 0 :(得分:2)
不幸的是,DateTimePicker
控件不支持1753年1月1日之前的日期。这最终归因于Date and Time Picker中Month Calendar和ComCtl32
Common Controls library控件的限制。这些控制不支持1753年之前的日期,因为这是格里高利和朱利安日历之间的分界线。由于控件基于公历,因此它们不会计算与朱利安历法一致的日期。
这会影响.NET代码的原因是因为DateTimePicker
类是较低级comctl32
控件的包装器。相关代码为here。
可悲的是,这个限制也会延续到the Mono implementation of the control,所以即使您在Linux或Mac上通过Mono使用DateTimePicker
,它仍然不允许在此之前的日期,尽管缺少{ {1}}在操作系统中。
看起来Telerik有their own DateTimePicker
control。这可能值得调查。但是,在对文档进行快速扫描之后,我看不出它的限制是什么,如果有的话。