Я пытаюсь привязать свойство контейнера из DataTemplate. Упрощенная версия моей разметки выглядит так:
<Grid>
<Grid.Resources>
<DataTemplate DataType="{x:Type myCustomItem}">
<!--Visual stuff-->
<StackPanel>
<StackPanel.ContextMenu>
<ContextMenu>
<MenuItem Header="Add Item"
Command="{Binding myCustomItemsICommand}"
CommandParameter="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type CustomContainerType}}, Path=ContainerProperty}"/>
</ContextMenu>
</StackPanel.ContextMenu>
</StackPanel>
</DataTemplate>
</Grid.Resources>
<CustomContainerType/>
</Grid>
Мой подход основан на этом посте , но, похоже, он не работает. Кажется, проблема возникает из-за размещения ContextMenu в визуальном дереве. В основном я пытаюсь привязать команду к DataContext объекта DataTemplate, но привязать CommandParameter к DataContext вне DataTemplate.