У меня есть источник данных («SampleAppearanceDefinitions»), который содержит одну коллекцию («Определения»). Каждый элемент в коллекции имеет несколько свойств, в том числе цвет, который мне интересен здесь.
Я хочу, чтобы в XAML цвет определенного элемента коллекции отображался в виде текста. Я могу сделать это просто отлично, используя этот код ниже ...
Text="{Binding Source={StaticResource SampleAppearanceDefinitions}, Path=Definitions[0].Color}"
Единственная проблема в том, что это требует от меня жесткого кодирования индекса элемента в коллекции Definitions (я использовал 0 в приведенном выше примере). На самом деле я хочу получить это значение из свойства моего текущего DataContext ('AppearanceID'). Можно представить себе правильный код, чтобы выглядеть следующим образом ...
Text="{Binding Source={StaticResource SampleAppearanceDefinitions}, Path=Definitions[{Binding AppearanceID}].Color}"
... но, конечно, это неправильно.
Может кто-нибудь сказать мне, как правильно это сделать? Это возможно только в XAML? Такое ощущение, что так и должно быть, но я не могу разобраться или не могу найти, как это сделать.
Любая помощь будет принята с благодарностью!
Спасибо!
AT