ListView.ListViewItemCollection クラス

ListView コントロールに表示される項目のコレクション、または ListViewGroup に割り当てられた項目のコレクションを表します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

構文

'宣言
Public Class ListViewItemCollection
    Implements IList, ICollection, IEnumerable
'使用
Dim instance As ListViewItemCollection
public class ListViewItemCollection : IList, ICollection, IEnumerable
public ref class ListViewItemCollection : IList, ICollection, IEnumerable
public class ListViewItemCollection implements IList, ICollection, 
    IEnumerable
public class ListViewItemCollection implements IList, ICollection, 
    IEnumerable

解説

ListView.ListViewItemCollection は、ListView コントロール内に表示される項目、または ListViewGroup に割り当てられた項目を格納します。ListView クラスでは、他にも 2 つのコレクションが定義されており、これらを使用して、ListView コントロール内でどの項目が選択されているかを判断できます。ListView.SelectedListViewItemCollection クラスは、ListView コントロール内で選択されている項目を判断するプロパティとメソッドを提供します。また、ListView.SelectedIndexCollection クラスを使用すると、ListView コントロールの ListView.ListViewItemCollection 内で選択されている項目のインデックスを確認できます。選択項目のコレクション クラスの他にも 2 つのクラスがあり、ListView コントロールの CheckBoxes プロパティが true に設定されているときに、このコレクション内でどの項目のチェック ボックスがオンであるのかを判断できます。

項目をコレクションに追加するには、いくつか方法があります。Add メソッドを使用して、1 つの項目をコレクションに追加します。複数の項目をコレクションに追加するには、項目の配列を作成し、その配列を AddRange メソッドに渡します。コレクション内の特定の位置に項目を挿入するには、Insert メソッドを使用します。項目を削除するには、Remove メソッドか、コレクション内の項目の位置がわかっている場合は RemoveAt メソッドを使用できます。Clear メソッドを使用すると、Remove メソッドを使用して一度に 1 つずつ項目を削除する代わりに、コレクションからすべての項目を削除できます。

項目を追加および削除するメソッドやプロパティの他に、ListView.ListViewItemCollection は、コレクション内で項目を検索するメソッドも提供します。Contains メソッドを使用すると、項目がコレクションのメンバかどうかを確認できます。コレクション内に項目があることがわかっている場合は、IndexOf メソッドを使用して、その項目がコレクションのどこに位置しているかを確認できます。

使用例

ListView.ListViewItemCollection に項目を追加する方法を次のコード例に示します。この例を実行するには、ListView1 という名前の ListView オブジェクトと TextBox1 という名前の TextBox が配置されているフォームに次のコードを貼り付けます。次に、フォームのコンストラクタまたは Load のイベント ハンドラから InitializeListView メソッドを呼び出します。

' This method adds two columns to the ListView, setting the Text 
' and TextAlign, and Width properties of each ColumnHeader.  The 
' HeaderStyle property is set to NonClickable since the ColumnClick 
' event is not handled.  Finally the method adds ListViewItems and 
' SubItems to each column.
Private Sub InitializeListView()
    Me.ListView1 = New System.Windows.Forms.ListView
    Me.ListView1.BackColor = System.Drawing.SystemColors.Control
    Me.ListView1.Dock = System.Windows.Forms.DockStyle.Top
    Me.ListView1.Location = New System.Drawing.Point(0, 0)
    Me.ListView1.Name = "ListView1"
    Me.ListView1.Size = New System.Drawing.Size(292, 130)
    Me.ListView1.TabIndex = 0
    Me.ListView1.View = System.Windows.Forms.View.Details
    Me.ListView1.MultiSelect = True
    Me.ListView1.HideSelection = False
    ListView1.HeaderStyle = ColumnHeaderStyle.Nonclickable
    Dim columnHeader1 As New ColumnHeader
    With columnHeader1
        .Text = "Breakfast Item"
        .TextAlign = HorizontalAlignment.Left
        .Width = 146
    End With
    Dim columnHeader2 As New ColumnHeader
    With columnHeader2
        .Text = "Price Each"
        .TextAlign = HorizontalAlignment.Center
        .Width = 142
    End With

    Me.ListView1.Columns.Add(columnHeader1)
    Me.ListView1.Columns.Add(columnHeader2)
    Dim foodList() As String = New String() {"Juice", "Coffee", _
        "Cereal & Milk", "Fruit Plate", "Toast & Jelly", _
        "Bagel & Cream Cheese"}
    Dim foodPrice() As String = New String() {"1.09", "1.09", _
        "2.19", "2.49", "1.49", "1.49"}
    Dim count As Integer
    For count = 0 To foodList.Length - 1
        Dim listItem As New ListViewItem(foodList(count))
        listItem.SubItems.Add(foodPrice(count))
        ListView1.Items.Add(listItem)
    Next
    Me.Controls.Add(Me.ListView1)
End Sub
// This method adds two columns to the ListView, setting the Text 
// and TextAlign, and Width properties of each ColumnHeader.  The 
// HeaderStyle property is set to NonClickable since the ColumnClick 
// event is not handled.  Finally the method adds ListViewItems and 
// SubItems to each column.
private void InitializeListView()
{
    this.ListView1 = new System.Windows.Forms.ListView();
    this.ListView1.BackColor = System.Drawing.SystemColors.Control;
    this.ListView1.Dock = System.Windows.Forms.DockStyle.Top;
    this.ListView1.Location = new System.Drawing.Point(0, 0);
    this.ListView1.Name = "ListView1";
    this.ListView1.Size = new System.Drawing.Size(292, 130);
    this.ListView1.TabIndex = 0;
    this.ListView1.View = System.Windows.Forms.View.Details;
    this.ListView1.MultiSelect = true;
    this.ListView1.HideSelection = false;
    this.ListView1.HeaderStyle = ColumnHeaderStyle.Nonclickable;
    
    ColumnHeader columnHeader1 = new ColumnHeader();
    columnHeader1.Text = "Breakfast Item";
    columnHeader1.TextAlign = HorizontalAlignment.Left;
    columnHeader1.Width = 146;

     ColumnHeader columnHeader2 = new ColumnHeader();
    columnHeader2.Text = "Price Each";
    columnHeader2.TextAlign = HorizontalAlignment.Center;
    columnHeader2.Width = 142;
  
    this.ListView1.Columns.Add(columnHeader1);
    this.ListView1.Columns.Add(columnHeader2);

    string[] foodList = new string[]{"Juice", "Coffee", 
        "Cereal & Milk", "Fruit Plate", "Toast & Jelly", 
        "Bagel & Cream Cheese"};
    string[] foodPrice = new string[]{"1.09", "1.09", "2.19", 
        "2.49", "1.49", "1.49"};
    
    for(int count=0; count < foodList.Length; count++)
    {
        ListViewItem listItem = new ListViewItem(foodList[count]);
        listItem.SubItems.Add(foodPrice[count]);
        ListView1.Items.Add(listItem);
    }
    this.Controls.Add(ListView1);
}
// This method adds two columns to the ListView, setting the Text 
// and TextAlign, and Width properties of each ColumnHeader.  The 
// HeaderStyle property is set to NonClickable since the ColumnClick 
// event is not handled.  Finally the method adds ListViewItems and 
// SubItems to each column.
void InitializeListView()
{
   this->ListView1 = gcnew System::Windows::Forms::ListView;
   this->ListView1->BackColor = System::Drawing::SystemColors::Control;
   this->ListView1->Dock = System::Windows::Forms::DockStyle::Top;
   this->ListView1->Location = System::Drawing::Point( 0, 0 );
   this->ListView1->Name = "ListView1";
   this->ListView1->Size = System::Drawing::Size( 292, 130 );
   this->ListView1->TabIndex = 0;
   this->ListView1->View = System::Windows::Forms::View::Details;
   this->ListView1->MultiSelect = true;
   this->ListView1->HideSelection = false;
   this->ListView1->HeaderStyle = ColumnHeaderStyle::Nonclickable;
   ColumnHeader^ columnHeader1 = gcnew ColumnHeader;
   columnHeader1->Text = "Breakfast Item";
   columnHeader1->TextAlign = HorizontalAlignment::Left;
   columnHeader1->Width = 146;
   ColumnHeader^ columnHeader2 = gcnew ColumnHeader;
   columnHeader2->Text = "Price Each";
   columnHeader2->TextAlign = HorizontalAlignment::Center;
   columnHeader2->Width = 142;
   this->ListView1->Columns->Add( columnHeader1 );
   this->ListView1->Columns->Add( columnHeader2 );
   array<String^>^foodList = {"Juice","Coffee","Cereal & Milk","Fruit Plate","Toast & Jelly","Bagel & Cream Cheese"};
   array<String^>^foodPrice = {"1.09","1.09","2.19","2.49","1.49","1.49"};
   for ( int count = 0; count < foodList->Length; count++ )
   {
      ListViewItem^ listItem = gcnew ListViewItem( foodList[ count ] );
      listItem->SubItems->Add( foodPrice[ count ] );
      ListView1->Items->Add( listItem );

   }
   this->Controls->Add( ListView1 );
}
// This method adds two columns to the ListView, setting the Text 
// and TextAlign, and Width properties of each ColumnHeader.  The 
// HeaderStyle property is set to NonClickable since the ColumnClick 
// event is not handled.  Finally the method adds ListViewItems and 
// SubItems to each column.
private void InitializeListView()
{
    this.listView1 = new System.Windows.Forms.ListView();
    this.listView1.set_BackColor(
        System.Drawing.SystemColors.get_Control());
    this.listView1.set_Dock(System.Windows.Forms.DockStyle.Top);
    this.listView1.set_Location(new System.Drawing.Point(0, 0));
    this.listView1.set_Name("listView1");
    this.listView1.set_Size(new System.Drawing.Size(292, 130));
    this.listView1.set_TabIndex(0);
    this.listView1.set_View(System.Windows.Forms.View.Details);
    this.listView1.set_MultiSelect(true);
    this.listView1.set_HideSelection(false);
    this.listView1.set_HeaderStyle(ColumnHeaderStyle.Nonclickable);

    ColumnHeader columnHeader1 = new ColumnHeader();
    columnHeader1.set_Text("Breakfast Item");
    columnHeader1.set_TextAlign(HorizontalAlignment.Left);
    columnHeader1.set_Width(146);

    ColumnHeader columnHeader2 = new ColumnHeader();
    columnHeader2.set_Text("Price Each");
    columnHeader2.set_TextAlign(HorizontalAlignment.Center);
    columnHeader2.set_Width(142);

    this.listView1.get_Columns().Add(columnHeader1);
    this.listView1.get_Columns().Add(columnHeader2);

    String foodList[] = new String[] { "Juice", "Coffee", "Cereal & Milk",
        "Fruit Plate", "Toast & Jelly", "Bagel & Cream Cheese" };
    String foodPrice[] = new String[] { "1.09", "1.09", "2.19", "2.49",
        "1.49", "1.49" };

    for (int count = 0; count < foodList.get_Length(); count++) {
        ListViewItem listItem = new ListViewItem(
            foodList.get_Item(count).ToString());
        listItem.get_SubItems().Add(foodPrice.get_Item(count).ToString());
        listView1.get_Items().Add(listItem);
    }
    this.get_Controls().Add(listView1);
} //InitializeListView

継承階層

System.Object
  System.Windows.Forms.ListView.ListViewItemCollection

スレッド セーフ

この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0

参照

関連項目

ListView.ListViewItemCollection メンバ
System.Windows.Forms 名前空間
ListView.SelectedListViewItemCollection
ListView.SelectedIndexCollection