Я пытаюсь заставить работать некоторый код привязки.По сути, я хочу связать свойство IsEnabled элемента контекстного меню моей сетки со значением выбранной строки в сетке.
У меня это работает с этим:
<my:DataGrid.ContextMenu>
<ContextMenu DataContext="{Binding PlacementTarget.SelectedItem, RelativeSource={RelativeSource Self}}">
<MenuItem Header="Grant Access" IsEnabled="{Binding Connectable}"/>
</ContextMenu>
</my:DataGrid.ContextMenu>
Но я хочу сделать это так, и это не работает.Это не ошибка, но просто не отключает пункт меню.Есть идеи почему?
<my:DataGrid.ContextMenu>
<ContextMenu>
<MenuItem Header="Grant Access" IsEnabled="{Binding Path=SelectedItem.Connectable, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type my:DataGrid}}}"/>
</ContextMenu>
</my:DataGrid.ContextMenu>