ListView.SelectedIndexCollection Kelas

Definisi

Mewakili kumpulan yang berisi indeks ke item terpilih dalam ListView kontrol.

public: ref class ListView::SelectedIndexCollection : System::Collections::IList
public class ListView.SelectedIndexCollection : System.Collections.IList
[System.ComponentModel.ListBindable(false)]
public class ListView.SelectedIndexCollection : System.Collections.IList
type ListView.SelectedIndexCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
[<System.ComponentModel.ListBindable(false)>]
type ListView.SelectedIndexCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public Class ListView.SelectedIndexCollection
Implements IList
Warisan
ListView.SelectedIndexCollection
Atribut
Penerapan

Contoh

Contoh kode berikut menunjukkan cara menggunakan SelectedIndicesanggota , , SelectedIndexChangeddan HeaderStyle serta ListView.SelectedIndexCollection kelas . Untuk menjalankan contoh ini, tempelkan kode berikut ke dalam formulir yang berisi ListView objek bernama ListView1 dan bernama TextBoxTextBox1. InitializeListView Panggil metode dari konstruktor formulir atau Load penanganan aktivitas. Contoh ini mengharuskan penanganan aktivitas dikaitkan dengan peristiwa dengan SelectedIndexChanged benar.

// 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.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.
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
// Uses the SelectedIndices property to retrieve and tally the  
// price of the selected menu items.
void ListView1_SelectedIndexChanged_UsingIndices( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   ListView::SelectedIndexCollection^ indexes = this->ListView1->SelectedIndices;
   double price = 0.0;
   System::Collections::IEnumerator^ myEnum1 = indexes->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      int index = safe_cast<int>(myEnum1->Current);
      price += Double::Parse( this->ListView1->Items[ index ]->SubItems[ 1 ]->Text );
   }

   
   // Output the price to TextBox1.
   TextBox1->Text = price.ToString();
}
// Uses the SelectedIndices property to retrieve and tally the  
// price of the selected menu items.
private void ListView1_SelectedIndexChanged_UsingIndices(
    object sender, System.EventArgs e)
{

    ListView.SelectedIndexCollection indexes = 
        this.ListView1.SelectedIndices;
    
    double price = 0.0;
    foreach ( int index in indexes )
    {
        price += Double.Parse(
            this.ListView1.Items[index].SubItems[1].Text);
    }

    // Output the price to TextBox1.
    TextBox1.Text =  price.ToString();
}
' Uses the SelectedIndices property to retrieve and tally the price of  
' the selected menu items.
Private Sub ListView1_SelectedIndexChanged_UsingIndices _
    (ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles ListView1.SelectedIndexChanged

    Dim indexes As ListView.SelectedIndexCollection = _
        Me.ListView1.SelectedIndices
    Dim index As Integer
    Dim price As Double = 0.0
    For Each index In indexes
        price += Double.Parse(Me.ListView1.Items(index).SubItems(1).Text)
    Next

    ' Output the price to TextBox1.
    TextBox1.Text = CType(price, String)
End Sub

Keterangan

Menyimpan ListView.SelectedIndexCollection indeks ke item terpilih dalam ListView kontrol. Indeks yang disimpan dalam ListView.SelectedIndexCollection adalah posisi indeks dalam ListView.ListViewItemCollection. Menyimpan ListView.ListViewItemCollection semua item yang ditampilkan dalam ListView kontrol.

Tabel berikut ini memperlihatkan contoh cara ListView.ListViewItemCollection menyimpan item dan memperlihatkan status ListView pilihannya dalam contoh ListView.

Indeks Item Status pilihan di ListView
0 Item1 Tidak Dipilih
1 Item2 Dipilih
2 Item3 Tidak Dipilih
3 Item4 Dipilih
4 Item5 Dipilih

Berdasarkan ListView.ListViewItemCollection contoh dalam tabel sebelumnya, tabel berikut menunjukkan bagaimana akan ListView.SelectedIndexCollection muncul.

Indeks Indeks item yang dipilih di ListViewItemCollection
0 1
1 3
2 4

Anda dapat menggunakan properti dan metode kelas ini untuk melakukan berbagai tugas dengan koleksi. Metode ini Contains memungkinkan Anda menentukan apakah posisi indeks dari ListView.ListViewItemCollection adalah salah satu indeks yang disimpan di ListView.SelectedIndexCollection. Setelah Anda tahu bahwa item berada dalam koleksi, Anda dapat menggunakan IndexOf metode untuk menentukan posisi indeks di ListView.SelectedIndexCollection.

Konstruktor

ListView.SelectedIndexCollection(ListView)

Menginisialisasi instans baru kelas ListView.SelectedIndexCollection.

Properti

Count

Mendapatkan jumlah item dalam koleksi.

IsReadOnly

Mendapatkan nilai yang menunjukkan apakah koleksi bersifat baca-saja.

Item[Int32]

Mendapatkan nilai indeks pada indeks yang ditentukan dalam koleksi.

Metode

Add(Int32)

Menambahkan item pada indeks yang ditentukan dalam Items array ke koleksi.

Clear()

Menghapus item dalam koleksi.

Contains(Int32)

Menentukan apakah indeks yang ditentukan terletak di koleksi.

CopyTo(Array, Int32)

Menyalin seluruh koleksi ke dalam array yang ada di lokasi tertentu dalam array.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetEnumerator()

Mengembalikan enumerator yang dapat digunakan untuk melakukan iterasi melalui kumpulan indeks yang dipilih.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IndexOf(Int32)

Mengembalikan indeks dalam ListView.SelectedIndexCollection indeks yang ditentukan dari ListView.ListViewItemCollectionListView kontrol.

MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
Remove(Int32)

Menghapus item pada indeks yang ditentukan dalam Items koleksi dari ListView.SelectedIndexCollection.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

ICollection.IsSynchronized

Mendapatkan nilai yang menunjukkan apakah akses ke koleksi disinkronkan (utas aman).

ICollection.SyncRoot

Mendapatkan objek yang dapat digunakan untuk menyinkronkan akses ke kumpulan kontrol.

IList.Add(Object)

Menambahkan item ke koleksi.

IList.Clear()

Menghapus semua item dari koleksi.

IList.Contains(Object)

Menentukan apakah item yang ditentukan terletak di koleksi.

IList.IndexOf(Object)

API ini mendukung infrastruktur produk dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

Mengembalikan indeks di ListView.SelectedIndexCollection. ListView.SelectedIndexCollection berisi indeks item terpilih di ListView.ListViewItemCollection kontrolListView.

IList.Insert(Int32, Object)

Menyisipkan item ke dalam koleksi pada indeks yang ditentukan.

IList.IsFixedSize

Mendapatkan nilai yang menunjukkan apakah ListView.SelectedIndexCollection memiliki ukuran tetap.

IList.Item[Int32]

Mendapatkan atau mengatur objek dalam koleksi.

IList.Remove(Object)

Menghapus kemunculan pertama item tertentu dari koleksi.

IList.RemoveAt(Int32)

Menghapus item dari koleksi pada indeks tertentu.

Metode Ekstensi

Cast<TResult>(IEnumerable)

Mentransmisikan elemen dari ke IEnumerable jenis yang ditentukan.

OfType<TResult>(IEnumerable)

Memfilter elemen berdasarkan IEnumerable jenis yang ditentukan.

AsParallel(IEnumerable)

Mengaktifkan paralelisasi kueri.

AsQueryable(IEnumerable)

Mengonversi menjadi IEnumerableIQueryable.

Berlaku untuk