如果我的链接标签位于arraylist中,如何获得新表单? 因为解决方案已经存在但是在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++;
}
答案 0 :(得分:0)
您应该使用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();
}