如果我的链接标签在数组列表中,如何拥有新表单? 因为解决方案已经存在,但在 2005 年。
ArrayList list = new ArrayList();
while (i<list.Count)
{
//creates a new linklabel
labels[i] = new LinkLabel();
labels[i].Text = list[i]+"";
labels[i].Location = new System.Drawing.Point(x, y);
// this.labels[i].Click += dynamic_LinkClicked;
y += 30;
this.Controls.Add(labels[i]);
i++;
}
你应该使用 Array of LinkLabel 而不是 ArrayList。
但是,如果必须使用 ArrayList,则应在将事件处理程序添加到 ArrayList 之前将事件处理程序附加到 linklabel 对象。
您可以在以下代码片段中观察到这一点。
ArrayList list = new ArrayList();
while (i<list.Count)
{
//creates a new linklabel
LinkLabel label = new LinkLabel();
label.Text = list[i]+"";
label.Location = new System.Drawing.Point(x, y);
label.Click += dynamic_LinkClicked;
y += 30;
labels[i] = label;
this.Controls.Add(labels[i]);
i++;
}
public void dynamic_LinkClicked(object sender, EventArgs e, string [] a)
{
Courseviewinside inside = new Courseviewinside();
inside.ShowDialog();
}