Comparteix a través de


TreeNode.Clone Método

Definición

Copia el nodo de árbol y todo el subárbol con raíz en este nodo de árbol.

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

Devoluciones

Object

Object que representa el TreeNode clonado.

Implementaciones

Ejemplos

En el ejemplo de código siguiente se clona el último nodo de árbol secundario del último nodo de árbol raíz y se inserta el clon como el primer nodo de árbol raíz en .TreeNodeCollection En este ejemplo se requiere que tenga un TreeView control en un Form objeto que contenga una colección de TreeNode objetos y .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

Comentarios

Se copia la estructura de árbol del nodo de árbol que se va a clonar y a continuación. Los nodos de árbol secundarios asignados al que se va a TreeNode clonar se incluyen en el nuevo nodo de árbol y subárbol.

El Clone método realiza una copia superficial del nodo. Si el valor de la Tag propiedad es un tipo de referencia, la copia original y clonada apuntará a la misma instancia única del Tag valor.

Se aplica a

Consulte también