Подтвердить что ты не робот

Как изменить элемент управления .NET DateTimePicker, чтобы разрешить вводить нулевые значения?

Какой самый простой и самый надежный способ изменения элемента управления .NET DateTimePicker, чтобы пользователи могли вводить значения null?

4b9b3361

Ответ 1

Вот интересная статья статьи CodeProject. У автора переопределено свойство Value, чтобы принять значение Null как DateTime.MinValue, сохраняя при этом валидацию MinValue и MaxValue стандартного элемента управления. Это все там.

Ответ 2

Вам не нужно изменять его, чтобы сделать это.

DateTimePicker in.net действительно имеет встроенный флажок.

Задайте для свойства ShowCheckBox значение true.

Затем вы можете использовать свойство Checked, чтобы узнать, ввел ли пользователь значение.

http://msdn.microsoft.com/en-us/library/system.windows.forms.datetimepicker.showcheckbox(VS.80).aspx

Ответ 3

Размещение дополнительного флажка с надписью "enable notification", который включает/отключает DateTimePicker.

Ответ 5

Я отправил свой длинный путь решения, в котором есть некоторые находки в комментариях кода о специфических проблемах с этим контролем:

Нулевое значение DateTime Picker

Ответ 6

Установите для свойства ShowCheckBox значение true. Затем вы можете использовать свойство Checked следующим образом:

private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
        {
            DateTimePicker thisDateTimePicker = (DateTimePicker)sender;
            if (thisDateTimePicker.Checked == false)
            {
                thisDateTimePicker.CustomFormat = @" "; //space
                thisDateTimePicker.Format = DateTimePickerFormat.Custom;
            }
            else
            {
                thisDateTimePicker.Format = DateTimePickerFormat.Short;
            }
        }