【发布时间】:2014-10-16 16:06:05
【问题描述】:
我正在创建一个在运行时生成多个面板的 winforms 应用程序。我希望每个面板在单击时打开一个网络链接。
面板是在运行时生成的:
for (int i = 0; i < meetings.Count(); i++) {
Panel door = new Panel();
door.Location = new System.Drawing.Point((i * 146) + (i * 10) + 10, 10);
door.Size = new System.Drawing.Size(146, 300);
door.BackgroundImage = ConferenceToolkit.Properties.Resources.Door;
door.Click += new EventHandler(door_Click);
Controls.Add(door);
}
我希望事件处理程序指向一个以某种方式存储在 Panel 属性中的 URL。 (在网络表单上,我可以使用 Attributes["myAttribute"] 但这似乎不适用于 WinForms):
private void door_Click(object sender, EventArgs e)
{
Panel p = sender as Panel;
Process.Start(p.Attributes["url"]);
}
【问题讨论】: