2013-08-16 36 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; 
    } 
} 

总之,你只需要一种方法来识别每一个按钮,然后作出反应调用常用处理程序时的标识符。