ListViewGroupCollection.Clear ListViewGroupCollection.Clear ListViewGroupCollection.Clear ListViewGroupCollection.Clear Method

Definition

Entfernt alle Gruppen aus der Auflistung.Removes all groups from the collection.

public:
 virtual void Clear();
public void Clear ();
abstract member Clear : unit -> unit
override this.Clear : unit -> unit
Public Sub Clear ()

Implementiert

Beispiele

Im folgenden Beispiel wird veranschaulicht, Clear wie die-Methode in einer Anwendung verwendet werden ListView kann, die Elemente nach Unterelement-Wert in der Detailansicht organisiert.The following example demonstrates how the Clear method can be used in an application that organizes ListView items by subitem value in the details view. Diese Form der Gruppierung ähnelt der im Windows-Explorer verwendeten Gruppierung.This form of grouping is similar to the grouping used in Windows Explorer. Im Beispiel werden die Gruppen dynamisch erstellt.In the example, the groups are created dynamically. Für jede Unterelement Spalte wird eine Gruppe für jeden eindeutigen Unterelement Wert erstellt.For each subitem column, one group is created for each unique subitem value. Für die übergeordnete Element Spalte wird eine Gruppe für jeden eindeutigen Anfangsbuchstaben erstellt.For the parent item column, one group is created for each unique initial letter. Die für jede Spalte erstellten Gruppen werden zusammen mit dem untergeordneten Text oder dem ersten Buchstaben in einer Hash Tabelle gespeichert.The groups created for each column are stored in a hash table along with the subitem text or initial letter. Beim Klicken ListViewGroupCollection auf eine Spaltenüberschrift wird gelöscht.When a column header is clicked, the ListViewGroupCollection is cleared. Die Hash Tabelle, die der Spalte, auf die geklickt wurde, wird dann abgerufen, und jedes Element wird der entsprechenden Gruppe zugewiesen.The hash table corresponding to the clicked column is then retrieved and each item is assigned to the appropriate group. Schließlich wird ein sortiertes Array der Gruppen in der Hash Tabelle hinzugefügt ListViewGroupCollection.Finally, a sorted array of the groups in the hash table is added to the ListViewGroupCollection.

Das komplette Beispiel finden Sie im ListViewGroupCollection Übersichts Referenz Thema.For the complete example, see the ListViewGroupCollection overview reference topic.

   // 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

Hinweise

Verwenden Sie diese Methode, um alle Gruppen aus der Auflistung zu entfernen.Use this method to remove all the groups from the collection. Beachten Sie, dass durch das ListView.Groups Entfernen von Gruppen aus der Auflistung keine ListView Elemente aus dem Steuerelement entfernt werden.Note that removing groups from the ListView.Groups collection does not remove items from the ListView control.

Diese Methode ist nützlich, um die Gruppierungs Funktion zu deaktivieren.This method is useful to disable the grouping feature. Wenn in einem ListView -Steuerelement keine Gruppen vorhanden sind, werden die Elemente in der Regel angezeigt.When there are no groups in a ListView control, the items appear normally. Um einzelne Gruppen aus der Auflistung zu entfernen, verwenden Remove Sie RemoveAt die-Methode oder die-Methode.To remove individual groups from the collection, use the Remove or RemoveAt method.

Diese Methode ist auch nützlich, wenn Sie mehrere Methoden zum Gruppieren der Elemente bereitstellen möchten.This method is also useful when you want to provide multiple ways to group the items. Um die Gruppierung zu ändern, verwenden Sie Clear zuerst die-Methode, um alle Gruppen aus der Auflistung zu entfernen AddRange , und verwenden Sie dann die-Methode, um ein anderes Array von Gruppen hinzuzufügen.To change the grouping, first use the Clear method to remove all the groups from the collection, then use the AddRange method to add a different array of groups.

Gilt für: