C#中DateTimePicker默认值显示为空的问题

 更新时间:2023年06月16日 10:24:53   作者:Carpe_D1em  
这篇文章主要介绍了C#中DateTimePicker默认值显示为空的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

C# DateTimePicker 默认值显示为空

#region  日期控件初始为空值处理
/// <summary>
/// 初始化日期时间控件
/// </summary>
/// <param name="dtp"></param>
public static void InitDateTimePicker(DateTimePicker dtp)
{
    dtp.Format = DateTimePickerFormat.Custom;
    dtp.CustomFormat = " ";  //必须设置成" "
    dtp.ValueChanged -= DateTimePicker_ValueChanged;
    dtp.ValueChanged += DateTimePicker_ValueChanged;
    dtp.KeyPress -= DateTimePicker_KeyPress;
    dtp.KeyPress += DateTimePicker_KeyPress;
}
public static void DateTimePicker_ValueChanged(object sender, EventArgs e)
{
    DateTimePicker dtp = (DateTimePicker)sender;                                 
    dtp.Format = DateTimePickerFormat.Long;
    dtp.CustomFormat = null; //null;
    dtp.Checked = false;// 解决BUG :防止日期控件不能选择相同日期的 --- 要放置在设置格式之后
}
public static void DateTimePicker_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == (char)8)  // backspace左删除键
    {
        DateTimePicker dtp = (DateTimePicker)sender;
        dtp.Format = DateTimePickerFormat.Custom;
        dtp.CustomFormat = " ";
    }
}
#endregion

DateTimePicker控件常用的属性

DateTimePicker控件允许用户在许多不同的格式中选择一个日期或时间值(或两者)。

可以以任何标准的事件和日期格式显示基于DateTime的值。

1、CustomFormat

String类型

功能:用于格式化在控件中的显示的日期和/或时间的自定义格式字符串。

默认值: ‘mm/dd/yyyy’例如04/24/2020

注意:Format 属性必须设置为 DateTimePickerFormat.Custom,此属性才能影响显示的日期/时间的格式设置。

符号

意义

p

12小时制且小写(‘am’ or ‘pm’)

P

12小时制且大写(‘AM’ or ‘PM’)

s

秒,前面不补0

ss

秒,前面补0

H

时,24小时制,前面不补0

HH

时,24小时制,前面补0

h

时,12小时制,前面不补0

hh

时,12小时制,前面补0

d

日,前面不补0

dd

日,前面补0

ddd

例如,周五 周日

dddd

例如,星期五 星期日

m

分,前面不补0

mm

分,前面补0

M

月,前面不补0

MM

月,前面补0

MMM

月,例如,一月 二月

MMMM

月,完整的月份名

yy

年,后两位 如:16

yyyy

年,全部 如:2016

t

一个字母的 上/下

tt

两个字符的 上午/下午

CustomFormat:yyyy/dd/mm    2020/01/03

CustomFormat:yyyy '年' MM '月' dd '日' 'at' HH:mm;ss tt(单引号在英文输入法下输入)   

                           2020  年  01  月  03  日   at  22:15:35 下午

2、Format

功能:确定日期和时间是用标准格式显示还是用自定义格式显示。

Format有如下4个选项:

(1)Custom:DateTimePicker 控件以自定义格式显示日期/时间值。 有关详细信息,请参阅 CustomFormat。

Eg:2020  年  01  月  03  日   at  22:15:35 下午

(2)Long:DateTimePicker 控件以用户操作系统设置的长日期格式显示日期/时间值。

Eg:2020 年 1 月 3 日

(3)Short:DateTimePicker 控件以用户操作系统设置的短日期格式显示日期/时间值。

Eg:2020/1/3

(4)Time:DateTimePicker 控件以用户操作系统设置的时间格式显示日期/时间值。

Eg:22:15:35

3、ShowUpDown

功能:指示是否为修改控件值显示数字显示框,而不是显示下拉日历。

当属性设置为true时,将使用数值调节钮控件(也称为 up-down 控件)来调整时间值。 ShowUpDown 可以通过单独选择每个元素并使用 "上移" 和 "下移" 按钮更改值来调整日期和时间。

当属性设置为false时,将使用下拉日历来调整时间值。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • c#开发cad预览图块步骤详解

    c#开发cad预览图块步骤详解

    在本篇文章里小编给大家分享了关于c#开发cad预览图块步骤和相关知识点,需要的朋友们学习下。
    2019-02-02
  • C# 预处理器指令的用法

    C# 预处理器指令的用法

    本文主要介绍了C# 预处理器指令的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • C#实现设置电脑显示器参数

    C#实现设置电脑显示器参数

    这篇文章主要为大家详细介绍了如何利用C#实现设置电脑显示器参数,文中的示例代码讲解详细,对我们学习C#有一定的帮助,感兴趣的小伙伴可以跟随小编一起了解一下
    2022-12-12
  • DevExpress实现GridControl根据列选中一行

    DevExpress实现GridControl根据列选中一行

    这篇文章主要介绍了DevExpress实现GridControl根据列选中一行,比较实用的功能,需要的朋友可以参考下
    2014-08-08
  • Unity UGUI的Image图片组件使用详解

    Unity UGUI的Image图片组件使用详解

    这篇文章主要为大家介绍了Unity UGUI的Image图片组件使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • C#中用foreach语句遍历数组及将数组作为参数的用法

    C#中用foreach语句遍历数组及将数组作为参数的用法

    这篇文章主要介绍了C#中用foreach语句遍历数组及将数组作为参数的用法,C#的数组可作为实参传递给方法形参,需要的朋友可以参考下
    2016-01-01
  • C#获取Word文档中所有表格的实现代码分享

    C#获取Word文档中所有表格的实现代码分享

    这篇文章主要介绍了C#获取Word文档中所有表格的实现代码分享,小编亲测可用,需要的朋友可以参考下
    2014-09-09
  • C#语言async await工作原理示例解析

    C#语言async await工作原理示例解析

    这篇文章主要为大家介绍了C#语言async await工作原理示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 自定义WPF分页控件的全过程记录

    自定义WPF分页控件的全过程记录

    接触WPF也有一段时间了,最近遇到了一个自定义分页控件的功能,感觉可以分享下面,所以这篇文章主要介绍了自定义WPF分页控件的相关资料,需要的朋友可以参考下
    2021-05-05
  • WinForm中KeyDown,KeyPress和KeyUp的顺序与区别解析

    WinForm中KeyDown,KeyPress和KeyUp的顺序与区别解析

    这篇文章主要介绍了WinForm中KeyDown,KeyPress和KeyUp的顺序与区别解析,对C#初学者来说很有学习借鉴价值,需要的朋友可以参考下
    2014-08-08

最新评论