Сбросить ValidatingType MaskedTextBox в конструкторе форм Win - PullRequest
1 голос
/ 17 января 2011

В приложении 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, в то время как диалоговое окно, открытое многоточием в том же свойстве, устанавливает его.

Ответы [ 2 ]

0 голосов
/ 17 января 2011

Просто снимите флажок «Использовать ValidatingType» в диалоговом окне задачи.

0 голосов
/ 17 января 2011

Единственный способ, который я нашел, сделать это через дизайнера - это выбрать один из "не" набранных вариантов, например Phone, кроме <Custom>.Это избавляет от вызова ValidatingType из сгенерированного дизайнером кода.

Оттуда вы можете вручную ввести другую маску.Поведение определенно странное.

...