沒問題通過PlacementTarget綁定到依賴屬性失敗 - 錯誤的路徑語法?
我創建了一個具有字符串值的依賴項屬性。我把它放在一個TextBlock
和它的作品:
<TextBlock dp:ElementDataContext.ElementName="LvMain">
我覈實,該屬性ElementDataContext.ElementName
設置爲「LvMain」。
問題
現在,這裏的問題是:在TextBlock
的上下文菜單,我想通過PlacementTarget
綁定到這個依賴屬性。
以下是我如何嘗試做到這一點。這是一個包含TextBlock
和ContextMenu
我的XAML的摘錄:
<TextBlock dp:ElementDataContext.ElementName="LvMain">
<TextBlock.ContextMenu>
<ContextMenu Tag="{Binding PlacementTarget.(dp:ElementDataContext.ElementName), RelativeSource={RelativeSource Self}}">
這無法在運行。當打開上下文菜單它會給我一個「BindingExpression路徑錯誤」:
BindingExpression path error: '(dp:ElementDataContext.ElementName)' property not found on 'object' ''TextBlock' (Name='')'. BindingExpression:Path=PlacementTarget.(dp:ElementDataContext.ElementName); DataItem='ContextMenu' (Name='contextMenu'); target element is 'ContextMenu' (Name='contextMenu'); target property is 'Tag' (type 'Object')
我懷疑我的綁定路徑是錯誤的。我試圖
PlacementTarget.(dp:ElementDataContext.ElementName)
PlacementTarget.dp:ElementDataContext.ElementName
PlacementTarget.ElementDataContext.ElementName
沒有什麼工作。什麼是正確的語法?這甚至有可能嗎?
看看這個:http://wpftutorial.net/DebugDataBinding.html可能可以幫助你找到關於錯誤的更多信息 –