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


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

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

Замечание

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

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

  1. Установите свойство TreeView элемента управления ImageList в существующий элемент управления 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;
    

См. также