例如。我的代码是
void abc(usercontrolclass ucc)
{
this.panel.Controls.Add(ucc);
}
void def()
{
usercontrolclass ucc1 = this.panel.Controls.GetChildUserControl(ucc);
}
注意“GetChildUserControl”不是我需要的有效函数是方法或 我可以用来获取ucc的功能。
答案 0 :(得分:2)
1 - 设置用户控件tag
属性。
2 - 将用户控件添加到其父级。
3 - 通过迭代Control.Controls
从父级获取Tag
属性的用户控制权。
您的代码应该是这样的:
void AddControl(UserControl control, int id)
{
control.Tag = id;
this.panel.Controls.Add(control);
}
UserControl GetControl(int id)
{
foreach (Control control in this.panel.Controls)
{
if (id == (int) control.Tag)
return (UserControl) control;
}
return null;
}
// or using LINQ
UserControl GetControl(int id)
{
return Controls.Cast<UserControl>()
.FirstOrDefault(control => id == (int) control.Tag);
}
答案 1 :(得分:0)