2010-08-06 86 views
0

這裏的樹:TemplatedParent - 一個澄清

  • MyControl:綁定(IContentMenuItem)
    • 控件模板
      • ContentPresenter:綁定(頭,HeaderTemplate中,HeaderTemplateSelector)
        • 的DataTemplate (For Header)
          • 標籤

我要在標籤@那棵樹結束結合的MyControl

在DataContext的一個屬性,我可以使用FindAncestor得到MyControl(很明顯),但我怎麼綁定它DataContext的


現在的模板化父問題

(類型IContentMenuItem的)將結合TemplatedParent中的DataTemplate內有效綁定到ContentPresenter,該ControlTemplateMyControl

回答

2

我認爲對於TemplatedParent問題的答案是ContentPresenter--它是模板應用到的任何東西。

如果你能使用FindAncestor得到MyControl,那麼你就可以綁定到DataContext像這樣的屬性:

<Label Content="{Binding DataContext.MyProperty, RelativeSource=…}" /> 

您也可以只設置一個x:NameMyControl,然後綁定的樣子:

<Label Content="{Binding DataContext.MyProperty, ElementName=myControl}" />