将日期时间选择器设置为空白或0值

时间:2012-03-25 14:18:00

标签: c# .net winforms date datepicker

我在这里有这个表格,用户将在其中添加诊断的开始日期。很简单吧?但在end诊断中我如何将其设置为空白?或0值?这是我的表格。enter image description here

7 个答案:

答案 0 :(得分:4)

您可以做的最好的事情是将ShowCheckBox设置为true。如果未选中CheckBox,请考虑未设置结束日期。

答案 1 :(得分:2)

我认为,无法将其设置为空白或0值..您可以做的最少是将其设置为MinDate,如果它为空...

这个对我有用..

 dateTimePicker1.Format = DateTimePickerFormat.Custom;

 dateTimePicker1.CustomFormat = " ";

答案 2 :(得分:1)

你不希望它被设置为0.这没有任何意义(1/1/01?大多数DB没有事件存储这个日期)

您应该将其设置为与开始相同或在合理范围内描述常见情况(如+ 2周)

答案 3 :(得分:0)

试试setting the Value property。但是我认为你可以设置这个值的时间有限。

答案 4 :(得分:0)

当您希望表示无日期时,您可以设置外部复选框并禁用日期时间选择器。

答案 5 :(得分:0)

尝试使用

dateTimePicker1.Value.Date

它只返回你的日期

答案 6 :(得分:0)

所有解决的问题现在只需要调整。正如你们所说的那样,我没有设置值或属性,所以无论如何它都会为null

private string _BirthDate;

        public Form1()
        {
            InitializeComponent();
            dateTimePicker1.MaxDate = DateTime.Now; // Ensures no future dates are set.
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            //dateTimePicker1.Checked = true;
            dateTimePicker1.CustomFormat = dateTimePicker1.CustomFormat;
            dateTimePicker1.Value = DateTime.Now;
        }
        public string BirthDate
        {
            set
            {
                if (dateTimePicker1.Value.Date == DateTime.Today)
                {
                    dateTimePicker1.CustomFormat = " ";

                }
                else
                {
                    _BirthDate = value;
                }
            }
            get { return _BirthDate; }
        }


        private void button1_Click(object sender, EventArgs e)
        {

           BirthDate = dateTimePicker1.Value.ToString();
        }