zoukankan      html  css  js  c++  java
  • C# DateTimePicker()的小技巧

    今天要改个东西,说是要改个C/S的日期时间框的默认值,查了下MSDN,使用DATETIMEPICKER的format属相和
    customformat属性来实现.
    最开始自己写了个测试的代码段:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

    using System.Globalization;

    namespace TimePickerApplication
    {
        public class Form1 : Form
        {
            public Form1()
            {
                InitializeTimePicker();
            }

            private DateTimePicker dtpFrom;
            private DateTimePicker dtpTo;

            private void InitializeTimePicker()
            {
                dtpFrom = new DateTimePicker();
                dtpTo = new DateTimePicker();

                dtpFrom.Format = DateTimePickerFormat.Custom;
                dtpFrom.CustomFormat = "MM/dd/yyyy HH:mm";
                dtpFrom.Value= DateTime.ParseExact("00:01", "HH:mm",null);

                dtpTo.Format = DateTimePickerFormat.Custom;
                dtpTo.CustomFormat = "MM/dd/yyyy HH:mm";
                dtpTo.Value= DateTime.ParseExact("23:59", "HH:mm",null);

                dtpFrom.Location = new Point(10, 10);
                dtpTo.Location = new Point(10, 50);

                dtpFrom.Width = 130;
                dtpTo.Width = 130;
                Controls.Add(dtpFrom);
                Controls.Add(dtpTo);
            }

            [STAThread]

            static void Main()
            {
                Application.EnableVisualStyles();
                Application.Run(new Form1());
            }

        }
    }

    这样写好以后,效果如下

    这样是出来了,日期可以用下拉菜单去改,但是时间不能自己控制.于是想到了用DateTimePicker.Value.Hour, Minute,不过刚回过神,这2个不都是Readonly的嘛 = =!NND.那怎么办呢...

    于是乎想到了用DateTime.ParseExact()来实现value的默认值.然后再事件里触发再去记录最后改动的值,事件触发就不写了,很简单很容易,主要是这个DateTime.ParseExact(),后来加入了红色的代码段,OK.
    最后效果图如下:

    如果想详细看看这个
    DateTime.ParseExact()请参考这里:
    System.DateTime.ParseExact()

    DateTimePicker的相关信息请参考这里:
    System.Windows.Forms.DateTimePicker()

    日期时间字符串格式参考这里
    Date and Time Format Strings

    不做与做得最大区别是:后者拥有对前者的评论权
  • 相关阅读:
    2019年3月6日 980. Unique Paths III
    2019年3月05日 961. N-Repeated Element in Size 2N Array
    2019年3月4日 701. Insert into a Binary Search Tree
    2019年3月1日 804. Unique Morse Code Words
    2019年2月28日 654. Maximum Binary Tree
    2019年2月26日 Unique Email Addresses、To Lower Case、Encode and Decode TinyURL
    Nexus Repository Manager 3 远程命令执行漏洞(CVE-2020-10199)复现
    常见的Web源码泄漏漏洞及其利用
    Nmap-脚本检测CVE漏洞
    Vulnhub-dpwwn-01靶机过关记录
  • 原文地址:https://www.cnblogs.com/zhouhuaguang/p/5918579.html
Copyright © 2011-2022 走看看