2016-05-15 16 views
0

内部に256個のボタンがあるアプリケーションを設計しようとしています。これらのボタンは、C#のforループを使用して追加されるため、XAMLコードには含まれていません。私の問題は、そのようなボタンにコンテキストメニューを追加する方法がわかりません。特定のボタンを右クリックするとコンテキストメニューが開きます。次に、コンテキストメニュー項目の一部を選択するときに、コード内の変数を変更できるようにします。XAMLを使用しないWPFのコンテキストメニュー

ボタンを追加するための私のコードは以下の通りです

public MainWindow() 
{ 
    InitializeComponent(); 

    int num = number(3); 

    for(int i =0; i<(num*num); i++) 
    { 
     //i want initialize the context menu here 
     Button button = new Button(); 

     button.Name = "Butt" + counter; 

     button.Content = "New"; 

     counter++; 
     button.Height = 35; 
     button.Width = 35; 
     button.Click += new RoutedEventHandler(NewButton_Click); 
     wp.Children.Add(button); // Wrap Panel where buttons displayed 
    }} 

答えて

1

あなたは、このようなコンテキストメニューを作成することができます

ContextMenu c = new ContextMenu(); 
MenuItem i1 = new MenuItem(); 
i1.Header = "Some Header"; 
i1.Click += i1_Click; 
c.Items.Add(i1); 

をし、このようなボタンにそれを添付:

button.ContextMenu = c; 
+0

[OK]を、しかしi1_Click正確に何ですか? – hegendroffer

+0

MenuItemのクリックに対するイベントハンドラ。新しいボタンをクリックするためのイベントハンドラである 'NewButton_Click'に似ています。 – derpirscher

+0

ありがとう!できます ! – hegendroffer

関連する問題