Привязка MultiDataTrigger к коллекции и к свойству в коллекции

У меня есть следующий XAML:

<Style.Triggers>

  <MultiDataTrigger>
    <MultiDataTrigger.Conditions>
      <Condition Binding="{Binding Path=Errors, Converter={StaticResource ErrorsCountConverter}}">
        <Condition.Value>True</Condition.Value>
      </Condition> 
      <Condition Binding="{Binding Path=Errors[0].HasError}" Value="True" />
    </MultiDataTrigger.Conditions>
    <Setter Property="Background" Value="Red" />
  </MultiDataTrigger>

</Style.Triggers>

Ошибки это ObservableCollection<BrokenRule>, BrokenRule имеет свойство с именем HasError. Теперь я хочу привязать это свойство HasError, но не уверен, как ссылаться на него в XAML.

1 ответ

Существует относительно неизвестный синтаксис прямой косой черты для доступа к текущему элементу коллекции. поэтому, если вы хотите привязать к текущему элементу источника данных, который вы используете "{Binding Path=/}" так как вы, кажется, хотите автоматически увеличивать свою коллекцию ошибок и иметь соответственно отвечающий HasError, вы сможете использовать что-то вроде "{Binding Path=Errors/HasError}" чтобы получить свойство HasErrors текущего элемента в Errors.

Надеюсь, это поможет!

Другие вопросы по тегам