dateTimePicker 怎么会得到一个带有星期的?
答案:2 悬赏:60 手机版
解决时间 2021-03-16 08:07
- 提问者网友:活着好累
- 2021-03-15 14:25
我在程序里有一个时间的控件,dateTimePicker 。设置的显示格式是long,但是客户那里使用的时候出现了:2010年8月16日星期一。这样的情况。是不是本地机器设置问题,那要怎么设置?急~
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-03-15 14:31
一般情况下,很少有需求要改动DateTimePicker的显示格式。所以关于这个话题,很少有人会注意到。可是没想到,这竟然是一个Microsoft官方承认的bug。
下面我就来说说这个问题。
首先,DateTimePicker本身就提供很多常用的显示方式,比如2007年03月29日或 07-03-29 或 29/03/07 等等,可以在DateTimePicker的Format属性中设置。此外DateTimePicker也允许用户自定义显示形式,可以在DateTimePicker的CustomFormat设置。
但是为什么我在CustomFormat中设置好了输出形式,却没有效果呢。
原因可能有两个:
1,没有设置DateTimePicker 的 Format属性。必须先将Format设置成Custom,否则CustomFormat是无效的。
2,就是微软的bug了,每次设置DateTimePicker.Format = Custom;以后必须紧跟着设置CustomFormat = "your format";即使已经存在合法的自定义形式。
比如 设置两个按钮button1 和button2 并分别设置两个 click事件
如下
void Button1_OnClick(object sender, EventsArg e)
{
DateTimePicker.Format = custom;
DateTimePicker.CustomFormat = "今天是yy年MMM月d日";
}
void Button2_OnClick(object sender, EventsArg e)
{
DateTimePicker.Format = custom;
DateTimePicker.CustomFormat = DateTimePicker.CustomFormat;
//即使CustomFormat存在合法值,也必须写这一步 :自己 = 自己
}
日期的替代符号:
格式字串
说明
d
一或二位数的日期。
dd
二位数的日期。个位数日期值的前面会加上零。
ddd
三个字元的星期缩写。
dddd
星期的完整名称。
h
12 小时制的一或二位数的小时。
hh
12 小时制的二位数小时。个位数值前面会加上零。
H
24 小时制的一或二位数的小时。
HH
24 小时制的二位数小时。个位数值前面会加上零。
m
一或二位数的分钟。
mm
二位数的分钟。个位数值前面会加上零。
M
一或二位数的月份。
MM
二位数的月份。个位数值前面会加上零。
MMM
三个字元的月份缩写。
MMMM
月份的完整名称。
s
一或二位数的秒数。
ss
二位数的秒数。个位数值前面会加上零。
t
A.M./P.M. 的单一字母缩写 (A.M. 显示为 "A")。
tt
A.M./P.M. 的两个字母缩写 (A.M. 显示为 "AM")。
y
一位数的年份 (2001 显示为 1)。
yy
年份的末二位数 (2001 显示为 01)。
yyyy
完整的年份 (2001 显示为 2001)。
下面我就来说说这个问题。
首先,DateTimePicker本身就提供很多常用的显示方式,比如2007年03月29日或 07-03-29 或 29/03/07 等等,可以在DateTimePicker的Format属性中设置。此外DateTimePicker也允许用户自定义显示形式,可以在DateTimePicker的CustomFormat设置。
但是为什么我在CustomFormat中设置好了输出形式,却没有效果呢。
原因可能有两个:
1,没有设置DateTimePicker 的 Format属性。必须先将Format设置成Custom,否则CustomFormat是无效的。
2,就是微软的bug了,每次设置DateTimePicker.Format = Custom;以后必须紧跟着设置CustomFormat = "your format";即使已经存在合法的自定义形式。
比如 设置两个按钮button1 和button2 并分别设置两个 click事件
如下
void Button1_OnClick(object sender, EventsArg e)
{
DateTimePicker.Format = custom;
DateTimePicker.CustomFormat = "今天是yy年MMM月d日";
}
void Button2_OnClick(object sender, EventsArg e)
{
DateTimePicker.Format = custom;
DateTimePicker.CustomFormat = DateTimePicker.CustomFormat;
//即使CustomFormat存在合法值,也必须写这一步 :自己 = 自己
}
日期的替代符号:
格式字串
说明
d
一或二位数的日期。
dd
二位数的日期。个位数日期值的前面会加上零。
ddd
三个字元的星期缩写。
dddd
星期的完整名称。
h
12 小时制的一或二位数的小时。
hh
12 小时制的二位数小时。个位数值前面会加上零。
H
24 小时制的一或二位数的小时。
HH
24 小时制的二位数小时。个位数值前面会加上零。
m
一或二位数的分钟。
mm
二位数的分钟。个位数值前面会加上零。
M
一或二位数的月份。
MM
二位数的月份。个位数值前面会加上零。
MMM
三个字元的月份缩写。
MMMM
月份的完整名称。
s
一或二位数的秒数。
ss
二位数的秒数。个位数值前面会加上零。
t
A.M./P.M. 的单一字母缩写 (A.M. 显示为 "A")。
tt
A.M./P.M. 的两个字母缩写 (A.M. 显示为 "AM")。
y
一位数的年份 (2001 显示为 1)。
yy
年份的末二位数 (2001 显示为 01)。
yyyy
完整的年份 (2001 显示为 2001)。
全部回答
- 1楼网友:患得患失的劫
- 2021-03-15 15:13
目前,bootstrap有两种日历。datepicker和datetimepicker,后者是前者的拓展。对于前者,如果箭头图标不显示,我的解决时,却下载最新的压缩包,放入项目中,确保bootstrap的css和datepicker的css文件引入,还有对应的js文件引入即可。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯