Я даже не уверен, как это выразить, поэтому мне очень жаль, если название сбивает с толку ... Мой XAML (упрощенный) выглядит так:
<UserControl x:Class="PBA.Application.Client.UserControls.UserControls.FreqReserve.OverView" xmlns:FreqReserve="clr-namespace:PBA.Application.Client.UserControls.UserControls.FreqReserve">
...
<DockPanel>
<UserControls:LegendControl>
<UserControls:LegendControl.Items>
<UserControls:LegendItem Visibility="{Binding Path=IsDirtyVisible, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type FreqReserve:OverView}}, Converter={StaticResource btvc}}" Identifier="Pink" Text="Ikke sendt"></UserControls:LegendItem>
<UserControls:LegendItem Identifier="Yellow" Text="Sendt"></UserControls:LegendItem>
<UserControls:LegendItem Identifier="LightGreen" Text="Accepteret"></UserControls:LegendItem>
<UserControls:LegendItem Identifier="White" Text="Ikke accepteret"></UserControls:LegendItem>
</UserControls:LegendControl.Items>
</UserControls:LegendControl>
</DockPanel>
</UserControl>
, где список LegendItem шаблонизирован внутриthe legendcontrol.
Выражение привязки завершается с ошибкой System.Windows.Data: 4. Вместо этого я попытался использовать elementname с теми же результатами.Я предполагаю, что это как-то связано с тем, что LegendItems не находятся непосредственно в дереве визуалов, но я понятия не имею (новичок WPF, я знаю).Что я делаю неправильно?