Istehak Ahmad Ответов: 2

После того, как clear/null datetimepicker once date time не отображается снова, это означает, что он снова не работает


После того, как clear/Null dateTimePicker once date time не отображается снова, это означает, что он снова не работает
private void radioButton11_CheckedChanged(object sender, EventArgs e)
{
   //Both lines are not working after clear/null dateTimePicker once          
    dateTimePicker1.Value = DateTime.Now; 
    dateTimePicker2.ResetText();
}

private void radioButton12_CheckedChanged(object sender, EventArgs e)
{
    dateTimePicker1.CustomFormat = " ";
    dateTimePicker2.CustomFormat = " ";
}


Что я уже пробовал:

private void radioButton11_CheckedChanged(object sender, EventArgs e)
{
   //Both lines are not working after clear/null dateTimePicker once          
    dateTimePicker1.Value = DateTime.Now; 
    dateTimePicker2.ResetText();
}
private void radioButton12_CheckedChanged(object sender, EventArgs e)
{
    dateTimePicker1.CustomFormat = " ";
    dateTimePicker2.CustomFormat = " ";
}

2 Ответов

Рейтинг:
9

Istehak Ahmad

//I got the Solution 

private void radioButton11_CheckedChanged(object sender, EventArgs e)
{         
    dateTimePicker1.Value = DateTime.Now; 
    dateTimePicker2.ResetText();

    //add dateTimePicker1.CustomFormat = "dd/MMM/yy";
    dateTimePicker1.CustomFormat = "dd/MMM/yy";
    dateTimePicker2.CustomFormat = "dd/MMM/yy";   
}


Рейтинг:
2

Sandeep Mewara

Это знают/сталкиваются немногие, смотрите здесь[^].

Это происходит потому, что вы устанавливаете его в ноль и сбрасываете в плохой формат.

После была общая работа по:

Логика заключается в том, чтобы сбросить дату до минимума, а затем использовать событие ValueChanged, чтобы скрыть его на дисплее, используя то, что вы уже пробовали.

private void DateTimePicker1_ValueChanged(object sender, EventArgs e)
{
    if (dateTimePicker1.Value == DateTimePicker.MinimumDateTime)
    {
        dateTimePicker1.Value = DateTime.Now; // This is required in order to show current month/year when user reopens the date popup.
        dateTimePicker1.Format = DateTimePickerFormat.Custom;
        dateTimePicker1.CustomFormat = " ";
    }
    else
    {
        // Set the format that you want it in. For example, Short set here. 
        dateTimePicker1.Format = DateTimePickerFormat.Short;
    }
}

private void Clear_Click(object sender, EventArgs e)
{
    dateTimePicker1.Value = DateTimePicker.MinimumDateTime;
}


Istehak Ahmad

После запуска Clear_Click все в порядке, после этого как я получу значение в dateTimePicker1?
Проблема в том, что после очистки dateTimePicker1 я не могу получить дату и время, dateTimePicker1 показывает пустой