ListViewItem.Group Właściwość

Definicja

Pobiera lub ustawia grupę, do której element jest przypisany.Gets or sets the group to which the item is assigned.

public:
 property System::Windows::Forms::ListViewGroup ^ Group { System::Windows::Forms::ListViewGroup ^ get(); void set(System::Windows::Forms::ListViewGroup ^ value); };
public System.Windows.Forms.ListViewGroup Group { get; set; }
member this.Group : System.Windows.Forms.ListViewGroup with get, set
Public Property Group As ListViewGroup

Wartość właściwości

ListViewGroup Do którego elementu jest przypisany.The ListViewGroup to which the item is assigned.

Przykłady

Poniższy przykład kodu demonstruje, Group jak właściwość może być używana w aplikacji, która ListView organizuje elementy według wartości SubItem w widoku szczegółów.The following code example demonstrates how the Group property can be used in an application that organizes ListView items by subitem value in the details view. Ta forma grupowania przypomina grupowanie używane w Eksploratorze Windows.This form of grouping is similar to the grouping used in Windows Explorer. W tym przykładzie grupy są tworzone dynamicznie.In the example, the groups are created dynamically. Dla każdej kolumny SubItem jest tworzona jedna grupa dla każdej unikatowej wartości SubItem.For each subitem column, one group is created for each unique subitem value. Dla kolumny element nadrzędny jest tworzona jedna grupa dla każdej unikatowej litery początkowej.For the parent item column, one group is created for each unique initial letter. Grupy utworzone dla każdej kolumny są przechowywane w tabeli skrótów wraz z tekstem podelementu lub początkową listą.The groups created for each column are stored in a hash table along with the subitem text or initial letter. Po kliknięciu nagłówka kolumny zostanie pobrana tabela skrótów odpowiadająca tej kolumnie.When a column header is clicked, the hash table corresponding to that column is retrieved. Następnie wartości tekstowe SubItem dla tej kolumny są używane jako klucze tabeli skrótów do pobierania poprawnej grupy dla każdego elementu.Next, the subitem text values for that column are used as hash table keys to retrieve the correct group for each item. Element zostanie następnie przypisany do grupy przy użyciu Group właściwości.The item is then assigned to the group using the Group property.

Ten przykład kodu jest częścią większego przykładu przewidzianego dla ListView.Groups właściwości.This code example is part of a larger example provided for the ListView.Groups property.

   // Sets myListView to the groups created for the specified column.
private:
   void SetGroups(int column)
   {
      // Remove the current groups.
      myListView->Groups->Clear();

      // Retrieve the hash table corresponding to the column.
      Hashtable^ groups = dynamic_cast<Hashtable^>(groupTables[column]);

      // Copy the groups for the column to an array.
      array<ListViewGroup^>^ groupsArray = gcnew array<ListViewGroup^>(groups->Count);
      groups->Values->CopyTo(groupsArray, 0);

      // Sort the groups and add them to myListView.
      Array::Sort(groupsArray, gcnew ListViewGroupSorter(myListView->Sorting));
      myListView->Groups->AddRange(groupsArray);

      // Iterate through the items in myListView, assigning each 
      // one to the appropriate group.
      IEnumerator^ myEnum = myListView->Items->GetEnumerator();
      while (myEnum->MoveNext())
      {
         ListViewItem^ item = safe_cast<ListViewItem^>(myEnum->Current);
         // Retrieve the subitem text corresponding to the column.
         String^ subItemText = item->SubItems[column]->Text;

         // For the Title column, use only the first letter.
         if (column == 0) 
         {
            subItemText = subItemText->Substring(0, 1);
         }

         // Assign the item to the matching group.
         item->Group = dynamic_cast<ListViewGroup^>(groups[subItemText]);
      }
   }
// Sets myListView to the groups created for the specified column.
private void SetGroups(int column)
{
    // Remove the current groups.
    myListView.Groups.Clear();

    // Retrieve the hash table corresponding to the column.
    Hashtable groups = (Hashtable)groupTables[column];

    // Copy the groups for the column to an array.
    ListViewGroup[] groupsArray = new ListViewGroup[groups.Count];
    groups.Values.CopyTo(groupsArray, 0);

    // Sort the groups and add them to myListView.
    Array.Sort(groupsArray, new ListViewGroupSorter(myListView.Sorting));
    myListView.Groups.AddRange(groupsArray);

    // Iterate through the items in myListView, assigning each 
    // one to the appropriate group.
    foreach (ListViewItem item in myListView.Items)
    {
        // Retrieve the subitem text corresponding to the column.
        string subItemText = item.SubItems[column].Text;

        // For the Title column, use only the first letter.
        if (column == 0) 
        {
            subItemText = subItemText.Substring(0, 1);
        }

        // Assign the item to the matching group.
        item.Group = (ListViewGroup)groups[subItemText];
    }
}
' Sets myListView to the groups created for the specified column.
Private Sub SetGroups(column As Integer)
    ' Remove the current groups.
    myListView.Groups.Clear()
    
    ' Retrieve the hash table corresponding to the column.
    Dim groups As Hashtable = CType(groupTables(column), Hashtable)
    
    ' Copy the groups for the column to an array.
    Dim groupsArray(groups.Count - 1) As ListViewGroup
    groups.Values.CopyTo(groupsArray, 0)
    
    ' Sort the groups and add them to myListView.
    Array.Sort(groupsArray, New ListViewGroupSorter(myListView.Sorting))
    myListView.Groups.AddRange(groupsArray)
    
    ' Iterate through the items in myListView, assigning each 
    ' one to the appropriate group.
    Dim item As ListViewItem
    For Each item In myListView.Items
        ' Retrieve the subitem text corresponding to the column.
        Dim subItemText As String = item.SubItems(column).Text
        
        ' For the Title column, use only the first letter.
        If column = 0 Then
            subItemText = subItemText.Substring(0, 1)
        End If 

        ' Assign the item to the matching group.
        item.Group = CType(groups(subItemText), ListViewGroup)
    Next item
End Sub

Uwagi

Ta właściwość służy do ustawiania grupy, do której należy element.Use this property to set the group to which an item belongs. Można również ustawić grupę w ListViewItem konstruktorze lub użyć tej właściwości, aby zmodyfikować członkostwo w grupie w czasie wykonywania.You can also set the group in the ListViewItem constructor, or you can use this property to modify the group membership at run time. Jeśli ustawisz tę właściwość na null , a ListView.Groups w kolekcji istnieją grupy, element pojawi się w grupie domyślnej, która ma etykietę nagłówka "DefaultGroupSystem. Windows. Forms".If you set this property to null and there are groups in the ListView.Groups collection, the item will appear in the default group, which has the header label "DefaultGroupSystem.Windows.Forms". Grupa domyślna nie jest zawarta w ListView.Groups kolekcji i nie można jej zmienić.The default group is not contained in the ListView.Groups collection, and cannot be altered. Jest to szczególnie przydatne w debugowaniu, aby upewnić się, że wszystkie elementy zostały prawidłowo dodane do grup.It is primarily useful in debugging to ensure that all items have been properly added to groups.

Uwaga

ListViewgrupy są dostępne tylko w systemach Windows XP i Windows Server 2003 (Windows XP Home Edition, Windows XP Professional, Windows Server 2003Windows XP Home Edition, Windows XP Professional, Windows Server 2003).ListView groups are only available on Windows XP and the Windows Server 2003 family (Windows XP Home Edition, Windows XP Professional, Windows Server 2003Windows XP Home Edition, Windows XP Professional, Windows Server 2003). Aby uzyskać więcej informacji, zobacz ListViewGroup temat Omówienie.For more information, see the ListViewGroup overview topic.

Dotyczy

Zobacz też