WPF Databinding: как мне получить доступ к «родительскому» контексту данных?

У меня есть список (см. Ниже), содержащийся в окне. В DataContext windows есть два свойства: Items и AllowItemCommand .

Как получить привязку для свойства Command Hyperlink необходимо разрешить против DataContext windows?

                     

Вы можете попробовать что-то вроде этого:

 ...Binding="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=DataContext.AllowItemCommand}" ... 

Это также будет работать:

  

ListView наследует свой DataContext из Window , поэтому он доступен и в этот момент.
А поскольку ListView , подобно подобным элементам управления (например, Gridview , ListBox и т. Д.), Является подclassом ItemsControl , Binding для таких элементов управления будет работать отлично.

Это также работает в Silverlight 5 (возможно, раньше, но я не тестировал его). Я использовал относительный источник, как это, и он работал нормально.

RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=telerik:RadGridView}"

Давайте будем гением компьютера.