TreeNode.Clone Méthode

Définition

Copie le nœud d'arbre et l'ensemble du sous-arbre rattaché à ce nœud d'arbre.

public:
 virtual System::Object ^ Clone();
public virtual object Clone ();
abstract member Clone : unit -> obj
override this.Clone : unit -> obj
Public Overridable Function Clone () As Object

Retours

Object qui représente le TreeNode cloné.

Implémente

Exemples

L’exemple de code suivant clone le dernier nœud d’arborescence enfant du dernier nœud d’arborescence racine et insère le clone en tant que premier nœud d’arborescence racine dans le TreeNodeCollection. Cet exemple nécessite que vous disposiez d’un TreeView contrôle sur un Form qui contient une collection d’objets TreeNode et un Button.

void button4_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   TreeNode^ lastNode = treeView1->Nodes[ treeView1->Nodes->Count - 1 ]->Nodes[ treeView1->Nodes[ treeView1->Nodes->Count - 1 ]->Nodes->Count - 1 ];
   
   // Clone the last child node.
   TreeNode^ clonedNode = dynamic_cast<TreeNode^>(lastNode->Clone());
   
   // Insert the cloned node as the first root node.
   treeView1->Nodes->Insert( 0, clonedNode );
   MessageBox::Show( String::Concat( lastNode->Text, " tree node cloned and added to ", treeView1->Nodes[ 0 ]->Text ) );
}
private void button4_Click(object sender, System.EventArgs e)
{
   TreeNode lastNode = treeView1.Nodes[treeView1.Nodes.Count - 1].
     Nodes[treeView1.Nodes[treeView1.Nodes.Count - 1].Nodes.Count - 1];

   // Clone the last child node.
   TreeNode clonedNode = (TreeNode) lastNode.Clone();

   // Insert the cloned node as the first root node.
   treeView1.Nodes.Insert(0, clonedNode);
   MessageBox.Show(lastNode.Text + 
     " tree node cloned and added to " + treeView1.Nodes[0].Text);
}
Private Sub button4_Click(sender As Object, _
  e As System.EventArgs) Handles button4.Click
   Dim lastNode as TreeNode
   lastNode = treeView1.Nodes(treeView1.Nodes.Count - 1). _
     Nodes(treeView1.Nodes(treeView1.Nodes.Count - 1).Nodes.Count - 1)

   ' Clone the last child node.
   Dim clonedNode As TreeNode = CType(lastNode.Clone(), TreeNode)

   ' Insert the cloned node as the first root node.
   treeView1.Nodes.Insert(0, clonedNode)
   MessageBox.Show(lastNode.Text & _
     " tree node cloned and added to " & treeView1.Nodes(0).Text)
End Sub

Remarques

L’arborescence du nœud d’arborescence cloné et ci-dessous est copiée. Tous les nœuds d’arborescence enfants affectés au TreeNode en cours de clonage sont inclus dans le nouveau nœud d’arborescence et la sous-arborescence.

La Clone méthode effectue une copie superficielle du nœud. Si la valeur de la Tag propriété est un type référence, la copie d’origine et la copie cloné pointent vers la même instance unique de la Tag valeur.

S’applique à

Voir aussi