2013-08-16 38 views
0

在窗體窗體中,我們是否可以在「FlowLayoutPanel」中實現按鈕的常見點擊事件,你能幫助我嗎?先謝謝你。窗口窗體中按鈕列表的常見事件?

+0

您需要指定並展開您的問題。這就是說winform中的所有控制元素都可以添加事件,FlowLayoutPanel中的按鈕也是如此。 – helgeheldre

+0

actaully我有一個flowlayout面板,我有動態標籤和動態按鈕,現在我想按鈕clik事件應該是常見的可能嗎? – Ssasidhar

+2

是的,這是可能的。程序員經常忽略Click事件處理程序中的* sender *參數。將它投射到按鈕上,你會知道哪個按鈕被點擊了。 –

回答

2

是的,你可以有一個事件的通用處理程序。正如你所創建的Button控制:

for (Int32 i = 0; i < 3; i++) 
{ 
    Button b = new Button(); 
    b.Name = "button" + i; 
    // OR: b.Tag = i; 
    b.Click += button_Click; 
    flowLayoutPanel1.Controls.Add(b); //or whatever you add them to... 
} 

現在你已經指定每個Button相同的處理程序:

private void button_Click(Object sender, EventArgs e) 
{ 
    Button b = (Button)sender; 
    switch (b.Name) // OR: switch (b.Tag) and react to integers instead of strings 
    { 
     case "button0": 
      break; 
     case "button1": 
      break; 
     case "button2": 
      break; 
    } 
} 

總之,你只需要一種方法來識別每一個按鈕,然後作出反應調用常用處理程序時的標識符。