最近这段时间在重构以前的一个项目,其中有一项就是要把DateTimePicker控件值可空。大家都知道的DateTimePicker值为DateTime类型,DateTime类型值不能等于Null。但是数据库中的时间类型的字段可以是空的,这样就会出现没办法给DateTimePicker赋值的问题。原先项目处理的方式是获取数据的时候给时间空的属性/字段赋一个默认的时间,可这样做用户体验不太好。╮(╯_╰)╭,在看了些前人的解决方法后就写出了这个控件。现分享一下,欢迎提出宝贵意见。
下面简单说下实现的要点:
1、隐藏DateTimePicker的Value属性,重新写成类型为DateTime?类型的属性
2、设置DateTimePicker的Format和CustomFormat属性值
知道了这两点就可以实现功能了,具体的实现大家看源码吧O(∩_∩)O~
最后奉上源码希望对大家有所帮助。猛击这里