加载时如何将null值设置为Datetimepicker?

How to set null value to Datetimepicker when load?

提问人:user3198588 提问时间:4/15/2014 最后编辑:user3198588 更新时间:11/17/2023 访问量:9825

问:

我有一个,我想在加载时将其设置为空,并在选择后显示值。 我找到了一个代码Datetimepicker1

        Datetimepicker1.Format = DateTimePickerFormat.Custom
        Datetimepicker1.CustomFormat = " " 

但它在选择后不会显示价值。

vb.net

评论

0赞 DidIReallyWriteThat 4/15/2014
我不太明白这个问题?这应该显示什么价值..?
1赞 sathya 4/15/2014
我假设您的意思是 winforms 应用程序中的日期时间选择器。在代码中,可以执行以下操作: string theDate = dateTimePicker1.Value.ToShortDateString();或者,如果要指定日期的格式:string theDate = dateTimePicker1.Value.ToString(“yyyy-MM-dd”);

答:

0赞 Nayeem Mansoori 4/15/2014 #1

DateTimePickers 不能设置为 null,因为 DateTime 不能为 null,但可以将它们设置为 DateTime.MinValue,这是未初始化的 DateTime 的默认值。然后你只需检查 dtp.Value = DateTime.MinValue,如果是这样,则将其视为 null。

但是,如果要真正区分何时未选择任何值,最简单的方法是将 DateTimePicker.ShowCheckBox 设置为 true,然后选中 dtp。选中,如果为 true,则读取该值,否则将其视为 null。

你有没有试过这个:用于测试目的

DateTime? myselectedDate = null;

private void DateTimePicker1_ValueChanged(Object sender, EventArgs e) {

   myselectedDate = DateTimePicker1.Value;

}

this.dateTimePicker1.Format = DateTimePickerFormat.Custom;
this.dateTimePicker1.CustomFormat = " "; //a string with one whitespace

评论

0赞 user3198588 4/15/2014
我不明白这一点DateTime? myselectedDate = null;
0赞 Steve 4/15/2014
它被标记为 VB.NET 而不是 C#
0赞 Nayeem Mansoori 4/15/2014
但是他有标签 C#,如果我在 Caode VB 上 avalilabe,那么你必须在 C# 上更改。如果你是一个程序员。
0赞 AttaKhan 4/15/2014 #2

试试这个

日期时间?dateSample= 空;

评论

0赞 user3198588 4/15/2014
我需要在EVENT中写它吗?
0赞 SysDragon 4/15/2014 #3

DatetimePicker 不能没有值。Null 或默认值为 。您的代码会更改格式,以便不显示任何内容。DateTime.MinValue

要再次显示日期,只需在需要时再次更改即可:DateTimePicker.Format

DateTimePicker1.Format = DateTimePickerFormat.Long;
0赞 ibrahim hulisi ergüler 2/18/2022 #4

因为 ,你格式化了你的 datetimepicker “”,你应该在 datetimepicker 的 valuechanged 事件中编写以下代码;

Datetimepicker1.Format = DateTimePickerFormat.short(您需要的类型:short,long等)