我有一個ListView
,我想設置一個上下文菜單,我不僅可以打開右鍵單擊一些列中的某些文本,但可以打開ListViewItem
上的任何文本所以我想我只是使用一個風格設置我的ContextMenu
,因爲我不能直接訪問ListViewItem
。在Setter.Value結構中設置事件處理程序
不幸的是,當你嘗試做這樣它不會編譯:
<Style TargetType="ListViewItem">
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
<MenuItem Header="Header" Click="Handler"/>
...
</ContextMenu>
</Setter.Value>
</Setter>
</Style>
錯誤102「處理程序」是無效的。 '點擊'不是 'System.Windows.Controls.GridView'上的事件。
我想你可以通過EventSetter
爲Click
-event來避免這種情況。但很明顯,代碼會從你需要的所有包裝標籤中獲得相當高的價值。
我的問題是如果有一些解決方法,所以你不必處理EventSetters
。
編輯:一個解釋見this question上爲什麼這個錯誤發生。
恐怕不會這樣做,因爲我正在使用GridView ... – 2011-01-20 21:07:53
對不起,問題是ListBox和我忽略了其他提示,它實際上是一個ListView。 – 2011-01-20 21:55:12