2009-07-21 75 views
0

我有一個位於用戶控制資源內的上下文菜單。如何訪問UserControl資源+ Infragistics控件(WPF)中的上下文菜單,C#

<UserControl.Resources> 

    <ContextMenu x:Key="Menu1"> 

     <MenuItem Header="View/Edit Contact" Command="{Binding SearchCommand}" CommandParameter="editcontact"/> 
     <MenuItem Header="View/Edit Company" Command="{Binding SearchCommand}" CommandParameter="editprimarycompany"/>   

    </ContextMenu> 


</UserControl.Resources> 

此資源綁定到WPF網格。

現在,在網格填充數據之後,我右鍵單擊網格。我能找到上下文菜單。

問題是我怎麼能在運行時知道哪個菜單項已被點擊?

我試圖與這

var t = this.TryFindResource("Menu1") as Style;

網格的SelectedItemsChanged事件

,但它是空的。

請幫助我,並告訴我在哪個網格事件我應該能夠接通這個!

在此先感謝。

我使用C#,WPF,Infragistics的控制(WPF)

回答

2

那麼首先,爲什麼你會投的菜單1文本菜單的樣式?這將始終返回null,因爲Menu1不是一個Style。將其轉換爲ContextMenu。其次,看起來你已經擁有了一切來確定哪個菜單項被點擊了。您在CommandParameter中傳遞了一個唯一字符串,您可以在運行時檢查該字符串。

+0

CommandParameter中的唯一字符串,您可以在運行時檢查。 如何以及在哪個事件中? – 2009-07-22 04:33:23