Извините за мой английский,
У меня есть приложение Windows, использующее mvvm arquitecture. У меня есть элемент управления View with differents. Один из них - текстовое поле. Мне нужно подтвердить введенное пользователем значение и установить специальное значение в атрибуте и в представлении, если введенное пользователем значение неверно. Я должен использовать свойство binding textbox. Мне не разрешено использовать управление событиями... например: PreviewTextInput.
Например, это мой контроль:
<TextBox Height="23" Text="{Binding Name, UpdateSourceTrigger=PropertyChanged}"/>
Мне нужно В случае, если пользователь вводит цифру, текстовое поле не позволяет этого. Мне нужно В случае, если пользователь вводит значение отрицательного числа 1 в атрибуте Name и показывает в текстовом поле это значение. Кроме того, мне нужно, если пользователь вводит значение, большее 50, установленное в атрибуте Name 50 и отображаемое в представлении.
Как я могу это сделать?
благодарю!
////////////////////////
Большое спасибо Рауль, проблема в том, что я не могу отображать сообщения об ошибках (политика компании...) Мне нужно заменить ошибочное значение допустимым значением. Например:
public string Name
{
{get { return _name; }
set
{
_name = value;
if (String.IsNullOrEmpty(value))
{
// throw new ApplicationException("Customer name is mandatory.");
}
}
}
//Вместо того, чтобы бросать исключение, установите в текстовое поле числовое значение //50....like
if (string.IsNullOrEmpty(tbCasesNumber.Text))
{
txtName.text= "50";
}
Как я могу это сделать в wpf?
Вы должны сделать проверку в свойстве модели просмотра. Я предлагаю прочитать валидацию в Windows Presentation Foundation, это отличное руководство и показывает, как работает валидация в WPF.
ОБНОВИТЬ
Я нашел очень полезные вещи, в первую очередь:
Приветствую;) и надеюсь, что это поможет...