WPF Edit Mask

Каков самый простой способ указать маску редактирования в WPF для простого текстового поля?

например тот, который при вводе преобразует 10000 в 10000.


person Gus Paul    schedule 10.02.2009    source источник


Ответы (3)


Короткий ответ, нет простого пути. Если вы часто используете маски, я бы порекомендовал создать собственный элемент управления с функцией маскирования. Использование класса MaskedTextProvider должно быть довольно простым.

См. Следующий пример настраиваемого TextBox с возможностью маскирования:

Пример текстового поля с маской ...

person Whytespot    schedule 11.02.2009

Самый простой и понятный способ - это просто захватить событие TextChanged и выполнить необходимую обработку.

пример ... http://karlhulme.wordpress.com/2007/02/15/masking-input-to-a-wpf-textbox/

person Brandon    schedule 10.02.2009
comment
Да, пока я могу это сделать. Я надеялся, что в xaml есть быстрый и простой шаблон для применения или аналогичный. - person Gus Paul; 11.02.2009
comment
Когда вы принимаете такое решение, убедитесь, что вы принимаете временные неверные значения. Нет ничего более разочаровывающего, чем заменить 10000 на 20000, удалив 1 и переформатировав текстовое поле как 0 - person scwagner; 12.02.2009

Вы смотрели на Xceed DataGrid Express для WPF. Это бесплатно и предоставляет элемент управления текстовым полем с маской, который очень просто сделает то, что вы хотите.

Редакция xceed Datagrid Express для WPF больше не доступна.

person AndyM    schedule 12.02.2009