У меня есть ContextMenu (из набора инструментов Silverlight) внутри DataTemplate, используемого в качестве ItemTemplate объекта ListBox:
<DataTemplate x:Key="BillItemDataTemplate">
<Grid Margin="0,0,0,12" x:Name="ItemGrid">
<kit:ContextMenuService.ContextMenu>
<kit:ContextMenu>
<kit:MenuItem Header="delete item"
Command="{Binding ???????.DeleteItemCommand}"
CommandParameter="{Binding}" />
</kit:ContextMenu>
</kit:ContextMenuService.ContextMenu>
[...]
</Grid>
</DataTemplate>
Как я могу сказать ContextMenu.Command связываться со свойством на модели представления, представленной external DataContext (то есть тем, которое применяется к ListBox)? Если я прав, я не могу использовать относительные декларации WPF, как объяснено здесь .
Я бы предпочел, чтобы моим дочерним моделям представления не требовалась ссылка на "родительскую" модель представления.