2-14  DataTimePicker控件<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

u本节学习目标:
n了解DataTimePicker控件的属性
n学习DataTimePicker控件如何显示时间之差

<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2-14-1  简介

如果希望应用程序能够使用户可以选择日期和时间,并以指定的格式显示该日期和时间,可以使用 DataTimePicker控件。DataTimePicker控件用于选择日期和时间,与Monthcalendar控件不同,DataTimePicker控件只能够选择一个时间段。一个基本的DataTimePicker控件如图2-44所示:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
图2-44  DataTimePicker控件实验布局

2-14-2  DataTimePicker控件的属性

DataTimePicker控件主要的属性如表2-14所示:
属性
说明
showcheckbox
是否在控件中显示复选框,当复选框为选中时候,表示未选择任何值。
checked
当showcheckbox 为TRUE时候,确定是否选择复选框。
showupdown
改为数字显示框,不再显示月历表。
value
当前的日期(年月日时分秒)
表2-14 DataTimePicker控件的属性

2-14-3  DataTimePicker控件实践操作

1. 案例学习:DataTimePicker控件显示时间之差

(1)从工具箱之中拖放两个DataTimePicker控件,若干Label标签,如图2-45所示进行布局。
图2-45  DataTimePicker控件实验布局
(2)具体功能的实现见下面的编码部分:
         /// <summary>
        /// 初始化事件时候,分别显示选择日期的日期和周以及时间差信息
        /// </summary>
        private void Form008_Load(object sender, EventArgs e)
        {
        label3.Text = "选择日期是本年度第" + dateTimePicker1.Value.DayOfYear.ToString() + "天";
            //学习如何从dateTimePicker控件内获取选择天为一年的第几天。
            label4.Text = "选择日期是本周" + dateTimePicker1.Value.DayOfWeek.ToString();
            //学习如何从dateTimePicker控件内获取选择天为一年的第几周。
            label5.Text = "两个日期之差是:" + Convert.ToString(dateTimePicker2.Value.DayOfYear - dateTimePicker1.Value.DayOfYear) + "天";
            //求两个选择的日期之差
        }
         /// <summary>
        /// 当dateTimePicker1的时间发生变化时候,执行下面代码
        /// </summary>
        private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
        {
            label5.Text = "两个日期之差是:" + Convert.ToString(dateTimePicker2.Value.DayOfYear - dateTimePicker1.Value.DayOfYear) + "天";    //求两个选择的日期之差
        }
         /// <summary>
        /// 当dateTimePicker2的时间发生变化时候,执行下面代码
        /// </summary>
        private void dateTimePicker2_ValueChanged(object sender, EventArgs e)
        {
            label5.Text = "两个日期之差是:" + Convert.ToString(dateTimePicker2.Value.DayOfYear - dateTimePicker1.Value.DayOfYear) + "天";    //求两个选择的日期之差
        }
(3)代码排错。
如果选择的日期都是同一年的不同两天,则通过求某天是一年的第几天,然后求差的方式是可以争取计算出两个日期之差的。但是如果第一天日期为2009年1月1日,另一天为2008年12月31日的话,我们知道其日期差为1天,但是通过我们的程序计算就会得出365天的错误值。更正代码如下:
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
        {
            DateTime d1 = dateTimePicker1.Value;
            DateTime d2 = dateTimePicker2.Value;
            TimeSpan d3 = d2.Subtract(d1);
          //注意:TimeSpan类型表示一个时间间隔类型,Subtract方法可以求出两个事件准确的日期差。
            label5.Text = "两个日期之差是:" + Convert.ToString(d3.TotalDays) + "天";
        }
        private void dateTimePicker2_ValueChanged(object sender, EventArgs e)
        {
            DateTime d1 = dateTimePicker1.Value;
            DateTime d2 = dateTimePicker2.Value;
            TimeSpan d3 = d2.Subtract(d1);
        //注意:TimeSpan类型表示一个时间间隔类型,Subtract方法可以求出两个事件准确的日期差。
            label5.Text = "两个日期之差是:" + Convert.ToString(d3.TotalDays) + "天";
        }

转载于:https://blog.51cto.com/qianshao/208680

2-14 DataTimePicker控件相关推荐

  1. DuiVision开发教程(14)-DUI控件基础类

    DuiVision所有控件的基类是CControlBase类. CControlBase的属性如下表: 属性名 类型 说明 show 1|0 控件是否可见 disable 1|0 控件是否被禁用 po ...

  2. .Net Core使用视图组件(ViewComponent)封装表单文本框控件

    实例程序的界面效果如下图所示: 在表单中的搜索条件有姓名,学号,成绩.他们在一行中按照水平三等分排列. 在cshtml中用html实现上述表单效果的的代码如下: 1 <form class=&q ...

  3. DevExpress控件学习总结(转)

    1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 ...

  4. Asp.net.Ajax控件学习

    Asp.net.Ajax控件学习:  1.  Accordion 功能:     实现了QQ.Msn好友分类的折叠效果,就像包含了多个CollapsiblePanels .  2.  AlwaysVi ...

  5. 控件中一些常用的属性和事件

    1.1常用基本属性 1)Name:表示控件的名称. 2)Enabled:表示控件是否可以对用户交互做出响应. 3)Font:表示控件中显示文字的字体格式,包括字体名称.字号以及是否以斜体.加粗和下划线 ...

  6. DevExpress控件学习总结

    1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 ...

  7. DevExpress控件学习总结 z

    1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 ...

  8. Panuon.UI.Silver – 开源C# WPF控件库

    Panuon.UI.Silver – 开源C# WPF控件库 Dotnet9 • 2019年12月13日 22:55 • WPF • 阅读 12145 时间如流水,只能流去不流回! 点赞再看,养成习惯 ...

  9. 《Dotnet9》系列-开源C# WPF控件库2《Panuon.UI.Silver》强力推荐

    国内优秀的WPF开源控件库,Panuon.UI的优化版本.一个漂亮的.使用样式与附加属性的WPF UI控件库,值得向大家推荐使用与学习. 今天站长(Dotnet9,站长网址:https://dotne ...

  10. 视频教程-C#Winform控件应用-C#

    C#Winform控件应用 二十多年的企业管理软件开发经历,熟知管理软件的整个开发流程,熟练掌握VFP语言,掌握VB语言,了解JAVA.asp.net.CSS.HTML/HTML5等语言,使用C#语言 ...

最新文章

  1. 第二十四课.循环神经网络RNN
  2. ubuntu更新rtl8192cu驱动
  3. ASP.NET Core 双因素验证2FA 实战经验分享
  4. 远程桌面登录 Windows Server 2003时提示无权限
  5. python多线程之线程锁(Lock)和递归锁(RLock)实例
  6. android 静默暗转_Android静默安装
  7. 大量数据丢失且无法恢复!欧洲云服务巨头数据中心起火
  8. 质数的无穷性——从素数到数论
  9. ASA L2L *** IKEV2共享密钥配置
  10. MAX485芯片收发详解 实现485通信
  11. 测试开发面试题及面试经验
  12. 可以用美图秀秀裁一寸照片
  13. python中文分词器(jieba类库)
  14. 国产系统-Ubuntu Kylin优麒麟图文(VIP典藏2022版)
  15. 艺术类职称计算机考试,2017年职称计算机考试Word2003巩固练习题20
  16. 关于5G NR PRACH小区半径的计算
  17. SpringBoot+Vue前后端分离java社团纳新活动报名网站
  18. 电机驱动电路之H桥基本知识---Trinamic电机驱动芯片
  19. Leetcode学习网站
  20. 从事了二年的Windows系统USB驱动开发

热门文章

  1. JS学习总结(6)——函数/弹出框
  2. linux ubuntu系统远程连接linux ubuntu
  3. java+catch块不执行_Java异常处理机制:try...catch...的执行流程
  4. 狂神说ElasitcSearch笔记(一)
  5. 使用Pycharm管理Python依赖库(不使用anaconda)
  6. Fultter 实战No toolchains found in the NDK toolchains folder for ABI arm-linux-androideabi
  7. php英文书籍在线,php英语四级在线练习系统
  8. card如何添加复选框 vant_Vant Weapp小程序蹲坑之使用card组件显示价格
  9. Flink 1.10 Native Kubernetes 原理与实践
  10. Java开发中,接口参数校验