Freigeben über


TreeNode.FromHandle(TreeView, IntPtr) Methode

Definition

Gibt den Strukturknoten mit dem angegebenen Handle zurück und wird dem angegebenen Strukturansichtssteuerelement zugewiesen.

public:
 static System::Windows::Forms::TreeNode ^ FromHandle(System::Windows::Forms::TreeView ^ tree, IntPtr handle);
public static System.Windows.Forms.TreeNode FromHandle(System.Windows.Forms.TreeView tree, IntPtr handle);
public static System.Windows.Forms.TreeNode? FromHandle(System.Windows.Forms.TreeView tree, IntPtr handle);
static member FromHandle : System.Windows.Forms.TreeView * nativeint -> System.Windows.Forms.TreeNode
Public Shared Function FromHandle (tree As TreeView, handle As IntPtr) As TreeNode

Parameter

tree
TreeView

Der TreeView Knoten, der den Strukturknoten enthält.

handle
IntPtr

nativeint

Das Handle des Strukturknotens.

Gibt zurück

A TreeNode that represents the tree node assigned to the specified TreeView control with the specified handle.

Beispiele

Im folgenden Codebeispiel wird das TreeNode reduziert und mithilfe seiner Eigenschaft eine Kopie erstellt Handle . Das Original TreeNode wird aus der TreeNodeCollectionSammlung entfernt, und die Kopie wird der Sammlung hinzugefügt. In diesem Beispiel ist es erforderlich, dass Sie über ein FormTreeView Steuerelement verfügen. Das TreeView Steuerelement sollte über zwei oder mehr Stammknoten verfügen, wobei jeweils mindestens ein untergeordneter Knoten vorhanden ist.

private:
   void treeView1_AfterCollapse( Object^ /*sender*/, TreeViewEventArgs^ e )
   {
      // Create a copy of the e.Node from its Handle.
      TreeNode^ tn = TreeNode::FromHandle( e->Node->TreeView, e->Node->Handle );
      tn->Text = String::Concat( tn->Text, "Copy" );

      // Remove the e.Node so it can be replaced with tn.
      e->Node->Remove();

      // Add tn to the TreeNodeCollection.
      treeView1->Nodes->Add( tn );
   }
private void treeView1_AfterCollapse(object sender, TreeViewEventArgs e)
{
   // Create a copy of the e.Node from its Handle.
   TreeNode tn = TreeNode.FromHandle(e.Node.TreeView, e.Node.Handle);
   tn.Text += "Copy";
   // Remove the e.Node so it can be replaced with tn.
   e.Node.Remove();
   // Add tn to the TreeNodeCollection.
   treeView1.Nodes.Add(tn);
}
Private Sub treeView1_AfterCollapse(sender As Object, _
  e As TreeViewEventArgs) Handles treeView1.AfterCollapse
   ' Create a copy of the e.Node from its Handle.
   Dim tn As TreeNode = TreeNode.FromHandle(e.Node.TreeView, e.Node.Handle)
   tn.Text += "Copy"
   ' Remove the e.Node so it can be replaced with tn.
   e.Node.Remove()
   ' Add tn to the TreeNodeCollection.
   treeView1.Nodes.Add(tn)
End Sub

Hinweise

Wenn der TreeView.Nodes Auflistung ein Knoten hinzugefügt wird, sendet das TreeView Steuerelement eine NM_CUSTOMDRAW Benachrichtigung, bevor der Knotenhandle verfügbar ist. Wenn Sie die WndProc Methode der TreeView benutzerdefinierten Zeichnung als Reaktion auf diese Benachrichtigung außer Kraft setzen, sollten Sie immer den Rückgabewert dieser Methode null überprüfen, bevor Sie versuchen, auf den Knoten zuzugreifen.

Gilt für:

Weitere Informationen