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#用递归算法解决八皇后问题

    C#用递归算法解决八皇后问题

    在软件编程中,这种思路确是一种解决问题最简单的算法,它通过一种类似于蛮干的思路,一步一步地往前走,每走一步都更靠近目标结果一些,直到遇到障碍物,我们才考虑往回走。
    2016-06-06
  • c# 获得本地ip地址的三种方法

    c# 获得本地ip地址的三种方法

    这篇文章主要介绍了c# 获得本地ip地址的三种方法,帮助大家更好的理解和实用c#,感兴趣的朋友可以了解下
    2020-12-12
  • C# listview添加combobox到单元格的实现代码

    C# listview添加combobox到单元格的实现代码

    从别处转来的,自己进行了一些小的修改,还不错,你自己先拖一个ListView1和一个ComboBox1,需要的朋友可以参考下
    2014-06-06
  • C# WPF实现读写CAN数据

    C# WPF实现读写CAN数据

    这篇文章主要介绍了C# WPF实现读写CAN数据,文中通过代码示例给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-06-06
  • C#引用类型和值类型的介绍与实例

    C#引用类型和值类型的介绍与实例

    这篇文章主要介绍了C#引用类型和值类型,有需要的朋友可以参考一下
    2013-12-12
  • C#子窗体获取父窗体TextBox框的值实现方式

    C#子窗体获取父窗体TextBox框的值实现方式

    文章描述了在C#中通过构造函数和公共属性两种方法实现窗体间传递数据的过程,父窗体通过按钮点击事件获取子窗体的文本框值,并通过构造函数或公共属性将值传递给子窗体,子窗体在加载时接收并处理传递的值,显示在文本框中
    2025-10-10
  • C#使用BarcodeLib生成条形码的完整代码

    C#使用BarcodeLib生成条形码的完整代码

    现代工业、物流、零售等领域,条形码作为信息识别的重要手段被广泛应用,BarcodeLib是一个开源的C#库,专为大家提供便捷、高效的条形码生成功能,本文将详细介绍如何在WinForm项目中集成和使用BarcodeLib库,帮助大家快速实现条形码的生成与显示,需要的朋友可以参考下
    2025-06-06
  • 使用c#进行串口通信的实现示例

    使用c#进行串口通信的实现示例

    本文主要介绍了使用c#进行串口通信的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-08-08
  • C# .Net实现灰度图和HeatMap热力图winform(进阶)

    C# .Net实现灰度图和HeatMap热力图winform(进阶)

    本文主要介绍了C# .NET实现简易灰度图和酷炫HeatMap热力图winform,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • C#单线程和多线程的端口扫描器应用比较详解

    C#单线程和多线程的端口扫描器应用比较详解

    这篇文章主要详细对比分析了C#单线程和多线程的端口扫描器应用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07

最新评论