2009-07-21 19 views
0

私はコンテキストメニューをUser Control Resourceの中に置いています。UserControlのコンテキストメニューにアクセスする方法Resources + Infragistics Control(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グリッドにバインドされています。

グリッドがデータで満たされた後、グリッドを右クリックします。私はコンテキストメニューを見つけることができます。

実行時にどのメニュー項目がクリックされたかを知る方法は問題です。

私は、グリッドのSelectedItemsChangedイベントで、この

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

で試してみましたが、それはnullです。

私に手伝ってください、また、グリッドのどのイベントでこれを行うことができるか教えてください!

ありがとうございます。

私はなぜあなたはスタイルとしてメニュー1のContextMenuを投じるだろう、すべての

答えて

2

まあまず、WPFのC#を使用してインフラジスティックス・コントロール(WPF)のでしょうか? Menu1はスタイルではないため、常にnullが返されます。 ContextMenuとしてキャストします。

第2に、どのメニュー項目がクリックされたかを判断するための準備が整っているようです。 CommandParameterには一意の文字列が渡されており、実行時にチェックすることができます。

+0

CommandParameterの一意の文字列。実行時に確認できます。 どのようにイベントが発生しますか? –

+0

CanExecuteおよびExecutedイベントでは、イベント引数にCommandParameterが含まれています。 e.Parameterを確認します。 – Charlie

関連する問題