Можете ли вы привязать DataTrigger к подключенному свойству?
-
09-06-2019 - |
Вопрос
В WPF возможно ли, чтобы DataTrigger привязывался к подключенному свойству?
По сути, я хочу использовать конвертер для подключенного свойства, чтобы предоставить стиль, когда определенное правило проверки было нарушено.Я использую разметку, подобную следующей:
<DataTrigger Binding="{Binding Path=Validation.Errors,
RelativeSource={RelativeSource Self},
Converter={StaticResource RequiredToBoolConverter}}"
Value="True">
<Setter Property="Background" Value="LightGreen" />
</DataTrigger>
Однако, когда это выполняется, я получаю следующее:
Система.Windows.Ошибка в данных:39 :Ошибка пути к BindingExpression:Свойство 'Validation' не найдено в 'object' "TextBox' (Name=")'.Выражение привязки: Путь= Проверка.Ошибки;DataItem='Текстовое поле' (Name=");целевой элемент это "Текстовое поле" (Name=");целевой объект свойство 'NoTarget' (тип 'Object')
Если я изменю путь привязки моего DataTrigger на "Text", я не получу ошибку привязки данных (но, конечно, это не обеспечивает поведение, которое я ищу).
Решение
Вам нужно заключить свойство в круглые скобки:
<DataTrigger Binding="{Binding Path=(Validation.Errors).YourAttachedProperty,...