Можете ли вы привязать DataTrigger к подключенному свойству?

StackOverflow https://stackoverflow.com/questions/53301

  •  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,...
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top