嗨,我有一个简单的问题。这是我的代码:
XmlDocument xmlData = new XmlDocument();
xmlData.Load("xml.xml");
/* Load announcements first */
XmlNodeList announcements = xmlData.GetElementsByTagName("announcement");
for (int i = 0; i < announcements.Count; i++)
{
ToolStripMenuItem item = new ToolStripMenuItem();
item.Name = announcements[i].FirstChild.InnerText;
item.Text = announcements[i].FirstChild.InnerText;
/* HERE IS WERE I NEED HELP */
item.Click += new EventHandler();
this.freedomMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { item });
}
xml LastChild保留每个声明的信息。我想创建一个单击事件处理程序,在其中单击列表项时,将显示一个消息框,其中包含数据。我的问题是我不知道如何动态生成事件处理程序来做到这一点:(
最佳答案
尝试:
/* HERE IS WERE I NEED HELP */
item.Click += new EventHandler(toolStripClick);
实际的处理程序:
void toolStripClick(object sender, EventArgs e)
{
ToolStripItem item = (ToolStripItem)sender;
MessageBox.Show(item.Text);
}
关于c# - C#动态添加事件处理程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1531594/