Ler em inglês

Partilhar via


TreeViewDrawMode Enumeração

Definição

Define constantes que representam as possíveis formas de desenhar um TreeView.

C#
public enum TreeViewDrawMode
Herança
TreeViewDrawMode

Campos

Nome Valor Description
Normal 0

O TreeView é desenhado pelo sistema operacional.

OwnerDrawAll 2

Todos os elementos de um nó TreeView são desenhados manualmente, incluindo ícones, caixas de seleção, sinais de adição e subtração e linhas que conectam os nós.

OwnerDrawText 1

A parte do rótulo dos nós TreeView são desenhados manualmente. Outros elementos de nó são desenhados pelo sistema operacional, incluindo ícones, caixas de seleção, sinais de adição e subtração e linhas que conectam os nós.

Exemplos

O exemplo de código a seguir demonstra como personalizar um TreeView controle usando sua funcionalidade de desenho de proprietário. O TreeView controle no exemplo exibe marcas de nó opcionais junto com os rótulos de nó padrão. As marcas de nó são especificadas usando a TreeNode.Tag propriedade . O TreeView controle também usa cores personalizadas, incluindo uma cor de realce personalizada.

Você pode personalizar a maioria das cores definindo as TreeView propriedades de cor, mas a cor de realce de seleção não está disponível como uma propriedade. Além disso, o retângulo de realce de seleção padrão se estende apenas em torno de um rótulo de nó. O desenho do proprietário deve ser usado para desenhar as marcas de nó e desenhar um retângulo de realce personalizado grande o suficiente para incluir uma marca de nó.

Para obter o exemplo completo, consulte o TreeView.DrawNode tópico de referência.

C#
public TreeViewOwnerDraw()
{
    // Create and initialize the TreeView control.
    myTreeView = new TreeView();
    myTreeView.Dock = DockStyle.Fill;
    myTreeView.BackColor = Color.Tan;
    myTreeView.CheckBoxes = true;

    // Add nodes to the TreeView control.
    TreeNode node;
    for (int x = 1; x < 4; ++x)
    {
        // Add a root node to the TreeView control.
        node = myTreeView.Nodes.Add(String.Format("Task {0}", x));
        for (int y = 1; y < 4; ++y)
        {
            // Add a child node to the root node.
            node.Nodes.Add(String.Format("Subtask {0}", y));
        }
    }
    myTreeView.ExpandAll();

    // Add tags containing alert messages to a few nodes 
    // and set the node background color to highlight them.
    myTreeView.Nodes[1].Nodes[0].Tag = "urgent!";
    myTreeView.Nodes[1].Nodes[0].BackColor = Color.Yellow;
    myTreeView.SelectedNode = myTreeView.Nodes[1].Nodes[0];
    myTreeView.Nodes[2].Nodes[1].Tag = "urgent!";
    myTreeView.Nodes[2].Nodes[1].BackColor = Color.Yellow;

    // Configure the TreeView control for owner-draw and add
    // a handler for the DrawNode event.
    myTreeView.DrawMode = TreeViewDrawMode.OwnerDrawText;
    myTreeView.DrawNode += 
        new DrawTreeNodeEventHandler(myTreeView_DrawNode);

    // Add a handler for the MouseDown event so that a node can be 
    // selected by clicking the tag text as well as the node text.
    myTreeView.MouseDown += new MouseEventHandler(myTreeView_MouseDown);

    // Initialize the form and add the TreeView control to it.
    this.ClientSize = new Size(292, 273);
    this.Controls.Add(myTreeView);
}

Comentários

Essa enumeração é usada pela propriedade para indicar se os nós ou os nós-rótulos de um TreeView são desenhados pelo TreeView.DrawMode proprietário. Para saber mais, confira o evento TreeView.DrawNode.

Aplica-se a

Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Confira também