Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 禁用时设置无值datetimepicker的方法_C# - Fatal编程技术网

C# 禁用时设置无值datetimepicker的方法

C# 禁用时设置无值datetimepicker的方法,c#,C#,如果禁用datetimepicker,是否有方法设置无值 private void radActualSales_CheckedChanged(object sender, EventArgs e) { if (radActualSales.Checked == true) { startTimePicker.Enabled = true; endTimePicker.Enabled = true; }

如果禁用datetimepicker,是否有方法设置无值

private void radActualSales_CheckedChanged(object sender, EventArgs e)
{
    if (radActualSales.Checked == true)
    {
        startTimePicker.Enabled = true;                
        endTimePicker.Enabled = true;
    }
    else
    {
        startTimePicker.Enabled = false;
        startTimePicker.Value.ToString("00:00:00");
        endTimePicker.Enabled = false;
        endTimePicker.Value.ToString("00:00:00");
    }
}
如果用户选中
radActualSales
单选按钮,则允许用户输入时间,但如果不选中,则我希望为其指定默认时间,如12:00am为开始时间,11:59pm为结束时间。如何做到这一点?

看看这个解决方案:

我已重写Value属性以接受Null值作为 DateTime.MinValue,同时维护MinValue和 标准控件的最大值。就这些


您可以为DateTimePicker指定一个新值

private void radActualSales_CheckedChanged(object sender, EventArgs e)
    {
        if (radActualSales.Checked == true)
        {
            startTimePicker.Enabled = true;                
            endTimePicker.Enabled = true;
        }
        else
        {
            startTimePicker.Enabled = false;
            //day, month, year, hour, minute, second
            startTimePicker.Value = new DateTime(1, 1, 1, 11, 59, 59);
            endTimePicker.Enabled = false;
            endTimePicker.Value. = new DateTime(1, 1, 1, 12, 0, 0);
        }
    }

因此,您不需要空的日期选择器,而是希望分别将时间设置为
12:00am
11:59pm
,是这样吗?
 private void radActualSales_CheckedChanged(object sender, EventArgs e)
        {
            if (radActualSales.Checked == true)
            {
                startTimePicker.Enabled = true;
                endTimePicker.Enabled = true;
            }
            else
            {
            startTimePicker.Enabled = false;
            startTimePicker.Value = DateTime.Today.AddHours(0);
            endTimePicker.Enabled = false;
            endTimePicker.Value = DateTime.Today.AddHours(-0.01);
            }
        }