2016-12-21 7 views
0

に私はボタンはFlowlayoutpanel

foreach (var Item in query.OrderBy(x=> x.menu_sort)) 
      { 
       var btn = new Button 
       { 
        Name = Item.menu_name, 
        Text = Item.menu_description, 
        Tag = Item.menu_name, 
        Size = new Size(107, 50), 
        Font = new Font("B Nazanin",10) 
       }; 

       MainPanel.Controls.Add(btn); 

----->私は、ボタンをクリックして、フォームを開きたいなどとflowlayoutpanel内の各データ行のためのボタンを追加します。 < -----

+0

のonclickイベントを使用し、そこにあなたがフォームを起動します。 – Trey

答えて

1

実行時にイベントハンドラをコントロールに追加したいと思うでしょうか?

private void button_Click(object sender, System.EventArgs e) 
{ 
    // Do stuff 
    MyForm form = new MyForm(); 
    form.Show(); 
} 
0

が、私はボタンをクリックして、フォームを開きたい:あなたは正しい署名で、どこかの方法button_Clickを実装する必要があり、その後

btn.Click += new EventHandler(button_Click); 

: あなたは、このようにそれを行うことができます。

ワイヤーあなたがそれらを作成し、これらのボタンのクリック()イベントアップ:

private void Foo() 
    { 
     foreach (var Item in query.OrderBy(x=> x.menu_sort)) 
     { 
      var btn = new Button 
      { 
       Name = Item.menu_name, 
       Text = Item.menu_description, 
       Tag = Item.menu_name, 
       Size = new Size(107, 50), 
       Font = new Font("B Nazanin",10) 
      }; 

      btn.Click += Btn_Click; 

      MainPanel.Controls.Add(btn); 
     } 
    } 

    private void Btn_Click(object sender, EventArgs e) 
    { 
     Button btn = (Button)sender; 
     // now do something with "btn", maybe based on btn.Tag? 
    } 
関連する問題