方法 : Windows フォーム ListView コントロールの項目をグループ化する

更新 : 2007 年 11 月

ListView コントロールのグループ化機能を使用すると、関連する複数の項目をグループ化して表示できます。これらのグループは、画面上で、グループ タイトルを含む水平方向のグループ ヘッダーで区切られます。ListView グループを使って、項目をアルファベット順、日付順、またはその他の論理的なグループにまとめることにより、大きなリストの内部を移動することが簡単になります。次のイメージは、グループ化した項目の例を示しています。

ListView でグループ化された項目

ListView グループ

グループ化を有効にするには、まず、デザイナまたはプログラムで、1 つ以上のグループを作成します。グループを定義した後で、そのグループに ListView 項目を割り当てることができます。プログラムによって、項目を 1 つのグループから別のグループに移動することもできます。

メモ :

ListView を Windows XP Home Edition、Windows XP Professional、Windows Server 2003 で使用できるのは、アプリケーションから Application.EnableVisualStyles メソッドを呼び出した場合だけです。以前のオペレーティング システムでは、グループに関連するコードは無効になり、グループは表示されません。詳細については、「ListView.Groups」を参照してください。

グループを追加するには

  • Groups コレクションの Add メソッドを使用します。

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

グループを削除するには

  • Groups コレクションの RemoveAt メソッドまたは Clear メソッドを使用します。

    RemoveAt メソッドは 1 つのグループを削除します。Clear メソッドはリストのすべてのグループを削除します。

    メモ :

    グループを削除しても、そのグループ内の項目は削除されません。

    ' 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();
    

項目をグループに割り当てたりグループ間で項目を移動したりするには

  • 個々の項目の ListViewItem.Group プロパティを設定します。

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

参照

処理手順

方法 : Windows フォーム ListView コントロールで項目を追加および削除する

概念

Windows XP の機能と Windows フォーム コントロール

参照

ListView コントロールの概要 (Windows フォーム)

ListView

ListView.Groups

ListViewGroup

その他の技術情報

ListView コントロール (Windows フォーム)