我有一個DataTemplate需要有我的結合將可能2個不同類型的RelativeSource即是這樣的:多的RelativeSource
AllowDrop={Binding RelativeSource={RelativeSource AncestorType={x:Type Label} or AncestorType={x:Type TextBox}}, Path=AllowDrop}
在這種情況下的RelativeSource將查找樹,並找到第一Label或TextBlock類型的祖先。現在我知道你們都會說什麼了,「爲什麼你要爲這樣的事做一些愚蠢的事?」公平的問題,我很高興你問:-)原因是我正在使用來自syncfusion的WPFish網格。我說WPFish是因爲編寫它的人不清楚WPF應該如何工作,並且需要相當多的竅門才能讓它正常工作。我需要在我的模板中將ContentControl的AllowDrop設置爲與其網格上的AllowDrop屬性相同。通常,這只是一個相當簡單的事情,只需綁定一個RelativeSource類型的網格,但它們有2個網格。一個稱爲GridControl,另一個稱爲GridDataControl。所以我需要搜索樹來查找類型爲GridControl或GridDataControl的第一個控件,並從中獲取AllowDrop屬性。
由於提前, 邁克爾
'TemplateParent'? – SLaks
我認爲TemplateParent在這種情況下不會是網格。這只是ControlTemplates不是嗎? – MikeKulls