В приложении Windows Forms я добавляю MaskedTextBox в форму. Если щелкнуть многоточие на свойстве Mask, откроется диалоговое окно Input Mask. В нем я установил маску на короткую дату, оставив флажок Use ValidatingType установленным.
Это приводит к следующим двум строкам в сгенерированном дизайнером коде;
this.maskedTextBox1.Mask = "00/00/0000";
this.maskedTextBox1.ValidatingType = typeof(System.DateTime);
Теперь, когда я хочу отменить это изменение, я ожидаю, что смогу щелкнуть правой кнопкой мыши свойство Mask элемента управления и выбрать Reset
. Это сбрасывает само свойство Mask, но оставляет свойство ValidatingType без изменений. Поскольку само свойство ValidatingType не отображается в конструкторе, похоже, нет способа сбросить это свойство с помощью конструктора.
Я также попытался вернуться в диалоговое окно «Маска ввода» и установить маску на <Custom>
, которая не имеет проверяющего типа, но все равно сохраняет существующий тип ValidatingType в сгенерированном дизайнером коде.
Итак, есть ли способ сбросить свойство ValidatingType с помощью Designer? Или я действительно должен пойти в сгенерированный дизайнером код и внести изменения сам?
Обновление
Основываясь на ответе Ганса, я нашел другой путь. После щелчка правой кнопкой мыши на свойстве Mask и выбора Reset
, only само свойство Mask очищается. Диалоговое окно «Маска ввода», которое вы получаете после нажатия на многоточие, устанавливает свойства «Маска» и «ValidatingType».
Итак ... использование сброса недостаточно. После использования сброса вам нужно снова войти в диалоговое окно «Маска ввода» и нажать «ОК».
Я все еще чувствую, что немного глючит, что Reset не сбрасывает ValidatingType, в то время как диалоговое окно, открытое многоточием в том же свойстве, устанавливает его.