WPF: распространять ошибку проверки вниз по визуальному дереву - PullRequest
0 голосов
/ 19 июля 2010

Я часто использую и повторно использую usercontrols в своих приложениях.

Например, если пользователь должен ввести целое число, у меня есть usercontrol с именем "IntegerEditor", который имеет метку для заголовка,текстовое поле для ввода данных пользователем и метка для единиц измерения (дюймы, секунды и т. д.).

Мой пользовательский элемент управления уже имеет правило проверки, которое я назвал "IntegerValidationRule", которое контролирует, если пользовательinput является целым числом.

У меня есть стиль, связанный с этим правилом проверки, который меняет фон элемента управления и добавляет сообщение об ошибке в подсказку.

Иногда я использую такие базовые элементы управленияв моем пользовательском интерфейсе, но я хочу добавить другие правила проверки, такие как «Целое число должно быть больше 1023», со специальными сообщениями об ошибках, как «Зарезервирован порт UDP ниже 1024, выберите большее число».

Знаете ли вы каким-либо образом, что я мог бы добавить эти правила проверки где-нибудь еще, но это все равно будет запускать стиль на моем контроле?Я думал о распространении ошибки проверки по визуальному дереву, но не нашел ничего хорошего об этом в сети.

Спасибо за ваши ответы,

A.Jeanrichard

1 Ответ

1 голос
/ 19 июля 2010

Хорошо ... вы могли бы реагировать на перенаправленные события "сбой проверки", но это было бы более сложным IMO, чем наличие ViewModel уровня приложения, который отвечает за координацию проверки между различными ViewModels.

...