ListViewItem.Group 속성

정의

항목을 할당할 그룹을 가져오거나 설정합니다.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

속성 값

항목을 할당할 ListViewGroup입니다.The ListViewGroup to which the item is assigned.

예제

다음 코드 예제에서는 하는 방법을 Group 속성을 구성 하는 애플리케이션에서 사용할 수 있습니다 ListView 항목 세부 정보 뷰에서 하위 항목 값입니다.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. 이러한 형태의 그룹화 Windows 탐색기에서 사용 되는 그룹화 하는 것과 비슷합니다.This form of grouping is similar to the grouping used in Windows Explorer. 예제에서는 그룹을 동적으로 생성 됩니다.In the example, the groups are created dynamically. 각 하위 항목 열에 대 한 각 하위 항목 고유 값에 대해 하나의 그룹이 만들어집니다.For each subitem column, one group is created for each unique subitem value. 부모 항목 열에 대 한 각 고유 첫 문자에 대 한 하나의 그룹이 만들어집니다.For the parent item column, one group is created for each unique initial letter. 각 열에 대해 만든 그룹은 초기 문자를 하위 항목 텍스트와 함께 해시 테이블에 저장 됩니다.The groups created for each column are stored in a hash table along with the subitem text or initial letter. 열 머리글을 클릭할 때 해당 열에 해당 하는 해시 테이블 검색 됩니다.When a column header is clicked, the hash table corresponding to that column is retrieved. 다음으로 하위 항목 텍스트 값 열에 대 한 각 항목에 대 한 올바른 그룹을 검색 하려면 해시 테이블 키로 사용 됩니다.Next, the subitem text values for that column are used as hash table keys to retrieve the correct group for each item. 그런 다음 Group 속성을 사용 하 여 그룹에 항목을 할당 합니다.The item is then assigned to the group using the Group property.

이 코드 예제는에 대해 제공 된 큰 예제의 일부는 ListView.Groups 속성입니다.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

설명

항목이 속한 그룹을 설정 하려면이 속성을 사용 합니다.Use this property to set the group to which an item belongs. 또한 ListViewItem 생성자에서 그룹을 설정 하거나이 속성을 사용 하 여 런타임에 그룹 멤버 자격을 수정할 수 있습니다.You can also set the group in the ListViewItem constructor, or you can use this property to modify the group membership at run time. 이 속성을 null로 설정 하 고 ListView.Groups 컬렉션에 그룹이 있는 경우이 항목은 헤더 레이블 "DefaultGroupSystem"이 있는 기본 그룹에 표시 됩니다.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". 기본 그룹에 포함 되어 있지는 ListView.Groups 컬렉션을 변경할 수 없습니다.The default group is not contained in the ListView.Groups collection, and cannot be altered. 모든 항목이 있는 그룹에 올바르게 추가 되었는지 확인 하는 디버깅에 주로 유용 합니다.It is primarily useful in debugging to ensure that all items have been properly added to groups.

참고

ListView 그룹은 Windows XP 및 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). 자세한 내용은 ListViewGroup 개요 항목을 참조하십시오.For more information, see the ListViewGroup overview topic.

적용 대상

추가 정보