Databinding WPF: come posso accedere al contesto dati “padre”?

Ho una lista (vedi sotto) contenuta in una finestra. DataContext della finestra ha due proprietà, Items e AllowItemCommand .

Come posso ottenere il binding per la proprietà Command del Hyperlink deve essere risolto rispetto al DataContext della finestra?

                     

Potresti provare qualcosa come questo:

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

Questo funzionerà anche:

  

ListView erediterà il suo DataContext da Window , quindi è disponibile anche a questo punto.
E poiché ListView , proprio come i controlli simili (ad esempio Gridview , ListBox , ecc.), È una sottoclass di ItemsControl , il Binding per tali controlli funzionerà perfettamente.

Funziona anche in Silverlight 5 (forse anche prima, ma non l’ho ancora testato). Ho usato la fonte relativa come questa e ha funzionato bene.

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