Auf Englisch lesen

Teilen über


ListView.SelectedIndexCollection Klasse

Definition

Stellt die Auflistung dar, die die Indizes für die aktivierten Elemente in einem ListView-Steuerelement enthält.

C#
public class ListView.SelectedIndexCollection : System.Collections.IList
C#
[System.ComponentModel.ListBindable(false)]
public class ListView.SelectedIndexCollection : System.Collections.IList
Vererbung
ListView.SelectedIndexCollection
Attribute
Implementiert

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die SelectedIndicesMember , SelectedIndexChangedund HeaderStyle und sowie die ListView.SelectedIndexCollection -Klasse verwendet werden. Fügen Sie zum Ausführen dieses Beispiels den folgenden Code in ein Formular ein, das ein ListView -Objekt mit dem Namen ListView1 und einen TextBox mit dem Namen TextBox1enthält. Rufen Sie die InitializeListView -Methode aus dem Konstruktor oder Load Ereignishandler des Formulars auf. In diesem Beispiel ist es erforderlich, dass der Ereignishandler dem SelectedIndexChanged Ereignis ordnungsgemäß zugeordnet ist.

C#
  // 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);
  }
C#
// 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();
}

Hinweise

Ein ListView.SelectedIndexCollection speichert die Indizes für die ausgewählten Elemente in einem ListView -Steuerelement. Die in ListView.SelectedIndexCollection gespeicherten Indizes sind Indexpositionen innerhalb der ListView.ListViewItemCollection. Speichert ListView.ListViewItemCollection alle elemente, die ListView im -Steuerelement angezeigt werden.

Die folgende Tabelle zeigt ein Beispiel für die ListView.ListViewItemCollection Speicherung der Elemente von ListView und zeigt deren Auswahlstatus in einem Beispiel ListViewan.

Index Artikel Auswahlstatus in der ListView
0 Item1 Nicht markiert
1 Item2 Ausgewählt
2 Item3 Nicht markiert
3 Element 4 Ausgewählt
4 Element5 Ausgewählt

Basierend auf dem ListView.ListViewItemCollection Beispiel in der vorherigen Tabelle veranschaulicht die folgende Tabelle, wie die ListView.SelectedIndexCollection angezeigt wird.

Index Index des ausgewählten Elements in der ListViewItemCollection
0 1
1 3
2 4

Sie können die Eigenschaften und Methoden dieser Klasse verwenden, um eine Vielzahl von Aufgaben mit der Auflistung auszuführen. Mit Contains der -Methode können Sie bestimmen, ob eine Indexposition aus dem ListView.ListViewItemCollection einer der in ListView.SelectedIndexCollectiongespeicherten Indizes ist. Sobald Sie wissen, dass sich das Element in der Auflistung befindet, können Sie die IndexOf -Methode verwenden, um die Position des Indexes im ListView.SelectedIndexCollectionzu bestimmen.

Konstruktoren

Eigenschaften

Count

Ruft die Anzahl der Elemente in der Auflistung ab.

IsReadOnly

Ruft einen Wert ab, der angibt, ob die Auflistung schreibgeschützt ist.

Item[Int32]

Ruft den Indexwert am angegebenen Index in der Auflistung ab.

Methoden

Add(Int32)

Fügt der Auflistung am angegebenen Index im Items-Array das Element hinzu.

Clear()

Löscht die Elemente in der Auflistung.

Contains(Int32)

Bestimmt, ob der angegebene Index in der Auflistung enthalten ist.

CopyTo(Array, Int32)

Kopiert die gesamte Auflistung an eine angegebene Position in einem vorhandenen Array.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetEnumerator()

Gibt einen Enumerator zurück, mit dem die Auflistung der Indizes ausgewählter Elemente durchlaufen werden kann.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IndexOf(Int32)

Gibt den Index in der ListView.SelectedIndexCollection des angegebenen Indexes aus der ListView.ListViewItemCollection des ListView-Steuerelements zurück.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Remove(Int32)

Entfernt das Element am angegebenen Index in der Items-Auflistung aus der ListView.SelectedIndexCollection.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

ICollection.IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf die Auflistung synchronisiert ist (threadsicher).

ICollection.SyncRoot

Ruft ein Objekt ab, mit dem der Zugriff auf die Steuerelementauflistung synchronisiert werden kann

IList.Add(Object)

Fügt der Auflistung ein Element hinzu.

IList.Clear()

Entfernt alle Elemente aus der Auflistung.

IList.Contains(Object)

Bestimmt, ob das angegebene Element in der Auflistung enthalten ist.

IList.IndexOf(Object)

Diese API unterstützt die Produktinfrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code gedacht.

Gibt den Index in der ListView.SelectedIndexCollection zurück. Die ListView.SelectedIndexCollection enthält die Indizes ausgewählter Elemente in der ListView.ListViewItemCollection des ListView-Steuerelements.

IList.Insert(Int32, Object)

Fügt ein Element am angegebenen Index in die Auflistung ein.

IList.IsFixedSize

Ruft einen Wert ab, der angibt, ob das ListView.SelectedIndexCollection eine feste Größe aufweist.

IList.Item[Int32]

Ruft ein Objekt in der Auflistung ab oder legt es fest.

IList.Remove(Object)

Entfernt das erste Vorkommen eines angegebenen Elements aus der Auflistung.

IList.RemoveAt(Int32)

Entfernt ein Element am angegebenen Index aus der Auflistung.

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.

Gilt für:

Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10