2010-04-02 9 views
2

je retire le contrôle de bouton d'une liste à une autre listh et erreur suivant occuresComment supprimer Parent du contrôle

« élément spécifié est déjà l'enfant logique d'un autre élément. Débranchez d'abord »

une idée comment supprimer cette exception.

Répondre

4

devrait être assez facile:

  1. Get the list of controls de votre contrôle parent.
  2. Appelez la fonction Remove sur cette liste pour supprimer votre contrôle.

donc quelque chose comme ceci:

myListControl.Controls.Remove(myControlToRemove); 
1

Essayez ceci:

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); 
     } 
    } 
} 
Questions connexes