Поделиться через


Практическое руководство. Настройка значков элемента управления TreeView в Windows Forms

Элемент управления Windows Forms TreeView может отображать значки рядом с каждым узлом. Значки расположены слева от текста узла. Чтобы отобразить эти значки, необходимо связать представление дерева с элементом управления ImageList. Дополнительные сведения о списках изображений см. в компоненте ImageList и инструкции «Как добавить или удалить изображения с помощью компонента ImageList для Windows Forms».

Заметка

Ошибка в Microsoft .NET Framework версии 1.1 запрещает отображение изображений на TreeView узлах при вызове приложения Application.EnableVisualStyles. Чтобы обойти эту ошибку, вызовите Application.DoEvents в методе Main сразу после вызова EnableVisualStyles. Эта ошибка исправлена в .NET Framework 2.0.

Для отображения изображений в древовидном представлении

  1. Установите свойство ImageList элемента управления TreeView в существующий элемент управления ImageList, который вы хотите использовать.

    Эти свойства можно задать в конструкторе с помощью окна "Свойства" или в коде.

    TreeView1.ImageList = ImageList1  
    
    treeView1.ImageList = imageList1;  
    
    treeView1->ImageList = imageList1;  
    
  2. Установите свойства ImageIndex и SelectedImageIndex для узла. Свойство ImageIndex определяет изображение, отображаемое для обычных и развернутых состояний узла, а свойство SelectedImageIndex определяет изображение, отображаемое для выбранного состояния узла.

    Эти свойства можно задать в коде или в редакторе TreeNode. Чтобы открыть редактор TreeNode, нажмите кнопку с многоточием (кнопку с многоточием (...) в окне свойств Visual Studio.) рядом со свойством Nodes в окне "Свойства".

    ' (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;  
    

См. также