我将按钮控件从一个列表移到另一个列表并发生以下错误
“指定的元素已经是另一个元素的逻辑子元素。首先断开它”
任何想法如何删除该异常。
答案 0 :(得分:4)
应该相当容易:
这样的事情:
myListControl.Controls.Remove(myControlToRemove);
答案 1 :(得分:1)
试试这个:
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Util.PlaceControlToContainer(this.button1, this.panel2);
}
}
public static class Util
{
public static void PlaceControlToContainer(Control control, Control container)
{
lock (control)
{
if (control.Parent != null)
{
control.Parent.Controls.Remove(control);
}
container.Controls.Add(control);
}
}
}