TreeNode.FromHandle(TreeView, IntPtr) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna o nó de árvore com o identificador especificado e atribuído ao controle de exibição de árvore especificado.
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
Parâmetros
- handle
-
IntPtr
nativeint
O identificador do nó de árvore.
Retornos
Um TreeNode que representa o nó de árvore atribuído ao controle TreeView especificado com o identificador especificado.
Exemplos
O exemplo de código a seguir obtém o TreeNode que foi recolhido e cria uma cópia dele usando sua Handle propriedade. O original TreeNode é removido do TreeNodeCollectione a cópia é adicionada à coleção. Este exemplo requer que você tenha um Form controle TreeView sobre ele. O TreeView controle deve ter dois ou mais nós raiz, cada um com pelo menos um nó filho.
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
Comentários
Quando um nó é adicionado à TreeView.Nodes coleção, o TreeView controle envia uma notificação NM_CUSTOMDRAW antes que o identificador do nó esteja disponível. Se você substituir o WndProc método do TreeView desenho personalizado em resposta a essa notificação, sempre deverá verificar o valor retornado desse método null
antes de tentar acessar o nó.