Compartilhar via


Como agrupar itens em um controle ListView dos Windows Forms

Com o recurso de agrupamento do ListView controle, você pode exibir conjuntos relacionados de itens em grupos. Esses grupos são separados na tela por cabeçalhos de grupo horizontais que contêm os títulos do grupo. Você pode usar ListView grupos para facilitar a navegação em grandes listas agrupando itens em ordem alfabética, por data ou por qualquer outro agrupamento lógico. A imagem a seguir mostra alguns itens agrupados.

Captura de tela de grupos ListView ímpares e pares.

Para habilitar o agrupamento, primeiro você deve criar um ou mais grupos no designer ou programaticamente. Depois que um grupo for definido, você poderá atribuir ListView itens a grupos. Você também pode mover itens de um grupo para outro programaticamente.

Para adicionar grupos

  1. Use o Add método da Groups coleção.

    // Adds a new group that has a left-aligned header
    listView1.Groups.Add(new ListViewGroup("List item text",
        HorizontalAlignment.Left));
    
    ' Adds a new group that has a left-aligned header
    ListView1.Groups.Add(New ListViewGroup("Group 1", _
     HorizontalAlignment.Left))
    

Para remover grupos

  1. Use o método RemoveAt ou o método Clear da coleção Groups.

    O RemoveAt método remove um único grupo; o Clear método remove todos os grupos da lista.

    Observação

    Remover um grupo não remove os itens dentro desse grupo.

    // Removes the first group in the collection.
    listView1.Groups.RemoveAt(0);
    // Clears all groups.
    listView1.Groups.Clear();
    
    ' Removes the first group in the collection.
    ListView1.Groups.RemoveAt(0)
    ' Clears all groups:
    ListView1.Groups.Clear()
    

Para atribuir itens a grupos ou mover itens entre grupos

  1. Defina a ListViewItem.Group propriedade de itens individuais.

    // Adds the first item to the first group
    listView1.Items[0].Group = listView1.Groups[0];
    
    ' Adds the first item to the first group
    ListView1.Items.Item(0).Group = ListView1.Groups(0)
    

Consulte também