如何将DateTimePicker格式从mm/dd/yyyy改为m/d/yyyy?
如何将DateTimePicker格式设置为m/d/yyyy(无前置零)
嘿,这个需求其实很好实现,核心就是绕开默认的短日期格式,改用自定义格式配置就行。下面给你分常见的两种开发场景贴代码:
WinForms 环境
WinForms的DateTimePicker自带自定义格式支持,直接两步搞定:
// 第一步:把控件格式模式切换为自定义 yourDateTimePicker.Format = DateTimePickerFormat.Custom; // 第二步:指定无前置零的日期格式 yourDateTimePicker.CustomFormat = "m/d/yyyy";
这里解释下格式字符串:m代表1-12的月份(自动去掉前置零),d代表1-31的日期(同样无前置零),yyyy是四位年份,刚好符合你要的1/5/2018这种效果。
WPF 环境
如果是WPF的DatePicker,代码里可以直接设置StringFormat属性,或者通过绑定配置:
// 方式一:直接设置控件的StringFormat yourDatePicker.StringFormat = "m/d/yyyy"; // 方式二:绑定SelectedDate时指定格式(更适合MVVM场景) Binding dateBinding = new Binding("SelectedDate") { StringFormat = "m/d/yyyy", Source = yourViewModel // 替换成你的数据源 }; yourDatePicker.SetBinding(DatePicker.SelectedDateProperty, dateBinding);
小提醒
别搞混格式字符串的大小写哦:小写m/d是数字格式(无前置零),大写M/D会变成月份缩写/星期几,比如M/d/yyyy会显示成Jan/5/2018,这可不是你要的结果~
内容的提问来源于stack exchange,提问作者yarden
相关产品推荐
相关产品推荐

