TreeNode.Clone Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zkopíruje uzel stromu a celý podstrom v tomto uzlu stromu.
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
Návraty
To Object představuje klonovaný TreeNode.
Implementuje
Příklady
Následující příklad kódu naklonuje poslední podřízený uzel stromu posledního kořenového stromu a vloží klon jako první kořenový strom uzel do TreeNodeCollection. Tento příklad vyžaduje, abyste měli TreeView ovládací prvek, Form který obsahuje kolekci TreeNode objektů a objektu 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
Poznámky
Struktura stromu z klonovaného uzlu stromu a níže se zkopíruje. Všechny uzly podřízeného stromu přiřazené k TreeNode klonování se zahrnou do nového uzlu stromu a podstromu.
Metoda Clone provádí mělkou kopii uzlu. Pokud je hodnota Tag vlastnosti referenčním typem, bude původní i klonovaná kopie odkazovat na stejnou instanci Tag hodnoty.