控件使用之DateEdit

禁止控件输入,只能选择日期
dateEdit1.Properties.TextEditStyle = DisableTextEditor
设置选择日期必须大于当天
dateEdit1.Properties.MinValue = DateTime.Now.AddDays(1)
格式化显示日期

预定义的掩码
| 标准掩码 | 名称 |示例|
| ---- | ---- | ---- |
| d | 短日期模式 | 3/1/2005 |
| D | 长日期模式 |Tuesday,March 01,2005
| t | 短时间模式 | 10:15 AM
| T | 长时间模式 | 10:15:00 AM
| f | 完整日期/时间模式(短时间) | Tuesday,March 01,2005 10:15 AM
| F | 完整日期/时间模式(长时间) | Tuesday,March 01,2005 10:15:00 AM
| g | 常规日期/时间模式(短时间) | 3/1/2005 10:15 AM
| G | 常规日期/时间模式(长时间) |3/1/2005 10:15:00 AM
| M 或 m | 月日模式 | March 01
| R 或 r | RFC1123 模式 | Tue,01 Mar 2005 10:15:00 GMT
| s | 可排序的日期/时间模式;符合 ISO 8601 | 2005-03-01T0:15:00
| u | 通用的可排序日期/时间模式 | 2005-03-01 10:14:00Z
| Y 或 y | 年月模式 | March,2005

自定义掩码,如果预定义掩码不符合特定的需求,则可以使用自定义掩码。

掩码 说明
d 月中日期的占位符。 如果月中日期只是一位数字 (1-9),则它被显示为一位数字。注意,如果单独使用“d”说明符,而没有其他自定义说明符,则它被解释为特定的标准掩码 (短日期模式)。 如果“d”说明符与其他自定义说明符或“%”字符一起被传递,则它被解释为自定义掩码说明符。
dd 月中日期的占位符。 如果月中日期只是一位数字 (1-9),则它被使用前导零格式化 (01-09)。
ddd 显示当前日期(在一周内)的缩写名称。 缩写名称由当前 culture 的DateTimeFormatInfo.AbbreviatedDayNames 属性确定。此说明符表示的取值不能被编辑。
dddd 显示当前日期(在一周内)的完整名称。 日期的完整名称由当前 culture 的 DateTimeFormatInfo.DayNames 属性确定。此说明符表示的取值不能被编辑。
f 由一位数字表示的秒部分(十分之几秒)的占位符。注意,如果单独使用“f”说明符,而没有其他自定义说明符,则它被解释为特定的标准掩码 (完整日期/时间模式)。 如果“f”说明符与其他自定义说明符或“%”字符一起被传递,则它被解释为自定义掩码说明符。
ff 由两位数字表示的秒部分(百分之几秒)的占位符。
fff 由三位数字表示的秒部分(毫秒)的占位符。
ffff 显示四位数字的秒部分(万分之几秒)。此说明符表示的取值不能被编辑。
fffff 显示五位数字的秒部分(十万分之几秒)。此说明符表示的取值不能被编辑。
ffffff 显示六位数字的秒部分(百万分之几秒)。此说明符表示的取值不能被编辑。
fffffff 显示七位数字的秒部分(千万分之几秒)。此说明符表示的取值不能被编辑。
g 显示当前日期/时间值的纪元 (例如 A.D.)。此说明符表示的取值不能被编辑。
h 日期/时间值的小时部分的占位符,其范围是 1-12。
hh 日期/时间值的小时部分的占位符,其范围是 1-12。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
H 日期/时间值的小时部分的占位符,其范围是 0-23。
HH 日期/时间值的小时部分的占位符,其范围是 0-23。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
m 日期/时间值的分钟占位符,其范围是 0-59。
mm 日期/时间值的分钟占位符,其范围是 0-59。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
M 在此位置的月份占位符,其限度是 1-12 范围内的数字。
MM 在此位置的月份占位符,其限度是 1-12 范围内的数字。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
MMM 月份缩写名称的占位符。 月份缩写名称由当前 culture 的 DateTimeFormatInfo.AbbreviatedMonthNames 属性确定。
MMMM 月份完整名称的占位符。 月份完整名称由当前 culture 的 DateTimeFormatInfo.MonthNames 属性确定。
s 日期/时间值的秒部分的占位符,其范围是 0-59。注意,如果单独使用“s”说明符,而没有其他自定义说明符,则它被解释为特定的标准掩码 (可排序的日期/时间模式)。 如果“s”说明符与其他自定义说明符或“%”字符一起被传递,则它被解释为自定义掩码说明符。
ss 日期/时间值的秒部分的占位符,其范围是 0-59。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
t 日期/时间值的 A.M./P.M. 指示符的首字符的占位符。注意,如果单独使用“t”说明符,而没有其他自定义说明符,则它被解释为特定的标准掩码 (短时间模式)。 如果“t”说明符与其他自定义说明符或“%”字符一起被传递,则它被解释为自定义掩码说明符。
tt 日期/时间值的 A.M./P.M. 指示符的占位符。
y 输入日期/时间值年份的后两位数字的占位符。注意,如果单独使用“y”说明符,而没有其他自定义说明符,则它被解释为特定的标准掩码 (年月模式)。 如果“y”说明符与其他自定义说明符或“%”字符一起被传递,则它被解释为自定义掩码说明符。
yy 输入日期/时间值年份的后两位数字的占位符。 此模式插入两个占位符来输入一个值。 如果输入了单个数字,则它被以零前导。
yyyy 输入包含世纪的日期/时间值年份部分的占位符。
z 仅以整小时数来显示系统当前时区的时区偏移量。 偏移量始终显示为带有前导符号 (0 显示为“+0”),指明当前时区早于格林尼治标准时间的小时数 (+)、 或者晚于格林尼治标准时间的小时数 (-)。 取值范围是 -12 至 +13。 如果偏移量是单个数字 (0-9),则它显示为有适当前导符号的单个数字。此说明符表示的取值不能被编辑。
zz 仅以整小时数来显示系统当前时区的时区偏移量。 偏移量始终显示为带有前导或后接符号 (0 显示为“+00”),指明当前时区早于格林尼治标准时间的小时数 (+)、 或者晚于格林尼治标准时间的小时数 (-)。 取值范围是 -12 至 +13。 如果偏移量是单个数字 (0-9),则它显示为有适当前导符号的以前导零格式化的值 (01-09)。
zzz 以小时和分钟来显示系统当前时区的时区偏移量。 偏移量始终显示为带有前导或后接符号 (0 显示为“+00:00”),指明当前时区早于格林尼治标准时间的小时数 (+)、 或者晚于格林尼治标准时间的小时数 (-)。 取值范围是 -12:00 至 +13:00。 如果偏移量是单个数字 (0-9),则它显示为有适当前导符号的以前导零格式化的值 (01:00-09:00)。
: 时间分隔符。 实际的时间分隔符由当前 culture 的 DateTimeFormatInfo.TimeSeparator 属性确定。
/ 日期分隔符。 实际的日期分隔符由当前 culture 的 DateTimeFormatInfo.DateSeparator 属性确定。
" abc " 或 ' abc ' 用引号括起的字符串。 把由单引号或双引号括起的字符串原样插入到编辑框中。 此字符串不能被编辑。
% c 把标准掩码说明符之一的 c 说明符解释为自定义掩码说明符。注意,如果以单个字符单独使用某个掩码说明符,则它被解释为标准掩码说明符。 仅当掩码说明符由两个或两个以上字符组成时,它才被解释为自定义说明符。 为了使用与某个标准说明符相同的自定义说明符,应该在掩码中以 % 字符前导它。
\ c 反斜杠被用作转义符。 它把后面跟随的字符原样插入到编辑框中。
任何其他字符 其他字符被原样插入到编辑框中。
   var formatString = "yyyy.MM";//显示年月
   var dateEdit=new DateEdit();
   dateEdit.Properties.Mask.EditMask = formatString;
   dateEdit.Properties.DisPlayFormat.FormatString= formatString;
   dateEdit.Properties.EditFormat.FormatString = formatString;
   dateEdit.Properties.Mask.UseMarkAsDisplay=true

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容