首页 新闻 会员 周边 捐助

C#动态循环生成button怎么分别写他们的事件,而且每个事件处理的内容不一样,内容是下面。谢谢了

0
[待解决问题]

private void SQLSet_Load(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load("sqlset.xml");
XmlNode xn = doc.SelectSingleNode("config");
//得到config的子节点
XmlNodeList xnl = xn.ChildNodes;
int i = 0;

int k = 0;
foreach (XmlNode xn1 in xnl)
{
XmlElement xe = (XmlElement)xn1;
GroupBox groupBox = new GroupBox();
groupBox.Text = xe.Attributes["name"].Value;
groupBox.Width = 350;
groupBox.Height = 200;
groupBox.Location = new Point(20 + i * 400, 12);
this.Controls.Add(groupBox);
i = i + 1;
int j = 0;

XmlNodeList xn2 = xe.ChildNodes;

foreach (XmlNode item in xn2)
{

Button button = new Button();
button.Text = item.Attributes["name"].Value;
button.Name = item.Attributes["key"].Value;
// string name= item.Attributes["key"].Value;
button.Location = new Point(20 + j * 100, 22);
groupBox.Controls.Add(button);
button.Tag = k;
button.Click += new EventHandler(btn_click);
//button.Click+= (s, e) => { btn_click };
j = j + 1;
k = k + 1;
}

}

}

旧夏潜入梦的主页 旧夏潜入梦 | 菜鸟二级 | 园豆:206
提问于:2018-08-21 18:52
< >
分享
所有回答(1)
0

for(){

btn=new btn();

btn.tag=k;

btn.click=onclick;

}

onclick(obj,e){

switch(obj.tag)

//不同的按钮,走不同的case,或者建立对应关系

}

czd890 | 园豆:14488 (专家六级) | 2018-08-21 19:09

谢谢你了

支持(0) 反对(0) 旧夏潜入梦 | 园豆:206 (菜鸟二级) | 2018-08-22 15:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册