Como definir ícones para o controle TreeView dos Windows Forms

O controle Windows Forms TreeView pode exibir ícones ao lado de cada nó. Os ícones são posicionados imediatamente à esquerda do texto do nó. Para exibir esses ícones, você deve associar a exibição de árvore a um ImageList controle. Para obter mais informações sobre listas de imagens, consulte Componente ImageList e Como adicionar ou remover imagens com o componente ImageList dos Windows Forms.

Observação

Um bug no Microsoft .NET Framework versão 1.1 impede que imagens apareçam em TreeView nós quando seu aplicativo chama Application.EnableVisualStyles. Para contornar esse bug, chame Application.DoEvents seu Main método imediatamente após chamar EnableVisualStyleso . Esse bug foi corrigido no .NET Framework 2.0.

Para exibir imagens em um modo de exibição de árvore

  1. Defina a TreeView propriedade do ImageList controle para o controle existente ImageList que você deseja usar.

    Essas propriedades podem ser definidas no designer com a janela Propriedades ou no código.

    TreeView1.ImageList = ImageList1  
    
    treeView1.ImageList = imageList1;  
    
    treeView1->ImageList = imageList1;  
    
  2. Defina as propriedades do nó e SelectedImageIndex as propriedadesImageIndex. A ImageIndex propriedade determina a imagem exibida para os estados normal e expandido do nó, e a propriedade determina a SelectedImageIndex imagem exibida para o estado selecionado do nó.

    Essas propriedades podem ser definidas no código ou no Editor TreeNode. Para abrir o Editor TreeNode, clique no botão de reticências ( The Ellipsis button (...) in the Properties window of Visual Studio.) ao lado da Nodes propriedade na janela Propriedades.

    ' (Assumes that ImageList1 contains at least two images and  
    ' the TreeView control contains a selected image.)  
    TreeView1.SelectedNode.ImageIndex = 0  
    TreeView1.SelectedNode.SelectedImageIndex = 1  
    
    // (Assumes that imageList1 contains at least two images and  
    // the TreeView control contains a selected image.)  
    treeView1.SelectedNode.ImageIndex = 0;  
    treeView1.SelectedNode.SelectedImageIndex = 1;  
    
    // (Assumes that imageList1 contains at least two images and  
    // the TreeView control contains a selected image.)  
    treeView1->SelectedNode->ImageIndex = 0;  
    treeView1->SelectedNode->SelectedImageIndex = 1;  
    

Confira também