C#中的dateTimePicker控件(WinForm)

         private void frmQuery_Load(object sender, EventArgs e)
        {
             dateTimePicker1.Format = DateTimePickerFormat.Custom; //设置为显示格式为自定义
             dateTimePicker1.CustomFormat = "yyyy-MM-dd"; //设置显示格式
            ...
            dtpS.Text = DateTime.Now.Year + "-" + DateTime.Now.Month + "-1"; //设为本月第一天
            dtpE.Text = DateTime.Now.Date.ToString(); //设为当前日期


        }

设置了CustomFormat后dateTimePicker会以不同的方式显示,它的Text属性会有相应变化,但Value值不变.例如:2008年9月1日,当CustomFormat = "yyyy-MM-dd"; 后dateTimePicker.Text为2008-09-01,dateTimePicker.Value仍为2008-9-1(不论CustomFormat怎么设置,Value值的格式不变.

如果习惯取Value值可以将它ToString后再利用String的函数来处理日期:

Value.ToString("u").Substring(0, 10)也可以得到2008-09-01这种格式.

//计算两日期之间之差
            DateTime dateS = dtpS.Value.Date,dateE=dtpE.Value.Date;
            TimeSpan dateDif = dateE.Subtract(dateS);
     rtbResults.AppendText("共查询" + dateDif.Days.ToString() + "天/n" ); //取两日期之差的天数

 

CustomFormat 属性的可选值:

格式字符串
 说明
 
d
 一位数或两位数的天数。
 
dd
 两位数的天数。一位数天数的前面加一个零。
 
ddd
 三个字符的星期几缩写。
 
dddd
 完整的星期几名称。
 
h
 12 小时格式的一位数或两位数小时数。
 
hh
 12 小时格式的两位数小时数。一位数数值前面加一个 0。
 
H
 24 小时格式的一位数或两位数小时数。
 
HH
 24 小时格式的两位数小时数。一位数数值前面加一个 0。
 
m
 一位数或两位数分钟值。
 
mm
 两位数分钟值。一位数数值前面加一个 0。
 
M
 一位数或两位数月份值。
 
MM
 两位数月份值。一位数数值前面加一个 0。
 
MMM
 三个字符的月份缩写。
 
MMMM
 完整的月份名。
 
s
 一位数或两位数秒数。
 
ss
 两位数秒数。一位数数值前面加一个 0。
 
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”)。
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值