C# WinForm中DateTimePicker控件的Text属性和Value属性 |
您所在的位置:网站首页 › 日期插件显示年月 › C# WinForm中DateTimePicker控件的Text属性和Value属性 |
在WinForm中经常会用到DateTimePicker这个控件,用这个控件获取时间会使用到Text属性或者Value属性。 关于这两个属性,还是存在着一些的不同,在这里简单的测试和总结一下。
首先看一下默认状态下的DateTimePicker控件
1.设置DateTimePicker控件显示的格式 这个控件有一个CustomFormat属性,这个属性可以用来控制控件值显示的日期格式。 在设置这个属性之前,需要将Format属性设置为Custom,表示使用自定义的格式。 CustomFormat的值有以下几种: (1)不设置任何值:使用默认的显示格式,就是你电脑右下角时间的格式(不包含时分秒)
(2)使用自定义的值:这里的这个值是可以任意写的。。。。(不过瞎写没法获得时间) 比如:aaaaa 显示的就是
这里设置格式的方法可以说是匹配特定字符。 以下这些字符是具有特殊含义的字符:y、M、d、h、H、m、s(其他的暂时没有发现)。
y:代表年。 使用yyyy设置后会在控件中显示对应的年份。 (另外还可以y、yy、yyy这三种会有特殊的显示,不过我也没太弄明白显示的规律,都是由年份相关的值组成的一串字符,一般情况也没啥用)
M:代表月。 MM:代表由两个数字符号组成的月份 ,如1月显示 01,12月显示12。 M:也是代表月,但是这里小于10月均只显示1位,没有前置的0,其余的正常显示。例如:1月显示1,10显示10。
d:代表天或者星期几 dd:代表由两个数字符号组成的天 ,例如:1则显示 01,12显示12。 d: 一位数只显示一个值,没有前置的0,其余正常显示。1显示1,10显示10。 ddd:代表周几,显示是这样的 dddd:这个代表的是星期几,显示式这个样子的 (微软考虑的真周到啊。。。。。) 这里要说一下超过4个以上的d,比如ddddddddddddd显示的依然是星期几,有没有上限不知道。那么如果要既显示日期有显示周几呢?很简单加上一个非d的字符放两个中间就行了。比如dd-dddd 显示的就是
h/H:都是代表小时,这里使用h是12时制,H是24小时制。(控件会对你输入的值作处理的,比如你使用了h,那么超过12的值会自动转换) hh/HH:是两个字符组成小时,h/H是一个字符,和上边的M和d的规则是一样的。
m:代表分钟。m和mm的规则和区别和上边一致。 s:代表秒。s和ss的规则和区别也和上边一致。
目前发现的特殊字符就上边这些,使用这些字符的组合基本就可以完成所有日期的显示格式了,比如显示年月日时分秒 那么格式为:yyyy-MM-dd HH:mm:ss 对应显示的就是
2.获取控件设置日期的两个方法及其区别 一般来说获取控件的日期(值)有两种方法,一种是使用Text属性,另一种是使用Value属性。这两个属性都可以做到,但是他们还是有一定区别的,简单的说一下。 1.首先是Text属性,它是获取或设置与当前控件关联的文本。这个意思就是DateTimePicker上显示的是什么,你获取到的就是什么。比如你显示的是a,那么Text属性的值就是a。而且Text属性使用ToString()这个方法的时候是不能传递表达格式的字符串做参数。所以想获得想要的时间格式就需要使用CustomForma这个属性设置想要的格式。 控件显示:
2.使用Value属性。它是获取或设置分配给控件的日期/时间值。这个值与设置的CustomForma属性的值没有任何关系,无论你设置什么格式,他获取的值就是一个固定格式。这个格式与你电脑设置的日期时间格式相同。 控件显示: 但是好处是这里在Value后的ToString()方法可以传递表达格式的字符串做参数。 比如:dateTimePicker1.Value.ToString("yyyy-MM-dd"),这个格式参数的字符的含义和上边的是一致的。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |