[英]Programmatically added buttons click event
我正在做一个winform项目,用户将在其中输入要出售的物品。 当用户进入销售屏幕时,将从用户提供的数据中生成一些按钮。 我需要捕获每个按钮的click事件。
举个例子:在数据表中:
用户将填写项目和价格,因此没有确切的项目数显示。
在表单中,如果用户按两次可口可乐按钮和百事可乐一次,我需要列出它们并告诉总数。
只需添加按钮,然后将click事件绑定到您的方法。 喜欢:
Button b=new Button();
b.Click+=new EventHandler(b_Click);
由于按钮的数量不确定,因此我将使用像user2353972的示例所示的通用事件处理程序。 然后,可以通过将发送方对象投射到Button来确定单击了哪个按钮。 然后,您可以访问按钮的所有属性,包括“ Text
和“ Tag
对象属性,然后可以使用这些属性来确定价格。
private void button1_Click(object sender, EventArgs e)
{
var b = (Button)sender;
switch(b.Text) //Do your
{
case "Coca Cola":
break;
case "Pepsi":
break;
case "Diet Pepsi":
break;
case "Pepsi Max":
break;
default:
break;
}
}
我同意马克·霍尔(Mark Hall)的观点。 那是要走的路。 我建议对语法进行一些小的改进:使用
switch ((sender As Button).Text)
简化代码。 问候,AB
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.