ListView.SelectedIndexCollection Klasse

Definition

Stellt die Auflistung dar, die die Indizes für die aktivierten Elemente in einem ListView-Steuerelement enthält.Represents the collection that contains the indexes to the selected items in a ListView control.

public: ref 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
Public Class ListView.SelectedIndexCollection
Implements IList
Vererbung
ListView.SelectedIndexCollection
Attribute
Implementiert

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die SelectedIndicesMember SelectedIndexChanged, und HeaderStyle und die ListView.SelectedIndexCollection -Klasse verwendet werden.The following code example demonstrates how to use the SelectedIndices, SelectedIndexChanged, and HeaderStyle members and the ListView.SelectedIndexCollection class. Fügen Sie den folgenden Code in ein Formular ListView ein, das ein ListView1 -Objekt mit dem Namen und ein TextBox mit TextBox1dem Namen enthält, um dieses Beispiel auszuführen.To run this example, paste the following code into a form that contains a ListView object named ListView1 and a TextBox named TextBox1. Ruft die InitializeListView -Methode aus dem Konstruktor oder Load Ereignishandler des Formulars auf.Call the InitializeListView method from the form's constructor or Load event handler. Für dieses Beispiel ist es erforderlich, dass der Ereignishandler Ordnungs SelectedIndexChanged gemäß dem-Ereignis zugeordnet ist.This example requires that the event handler is correctly associated with the SelectedIndexChanged event.

// 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

Hinweise

Ein ListView.SelectedIndexCollection speichert die Indizes für die ausgewählten Elemente in einem ListView -Steuerelement.A ListView.SelectedIndexCollection stores the indexes to the selected items in a ListView control. Die Indizes, die in ListView.SelectedIndexCollection gespeichert sind, sind Index ListView.ListViewItemCollectionPositionen innerhalb von.The indexes stored in the ListView.SelectedIndexCollection are index positions within the ListView.ListViewItemCollection. Speichert alle im- ListViewSteuer ListView.ListViewItemCollection Element angezeigten Elemente.The ListView.ListViewItemCollection stores all items displayed in the ListView control.

In der folgenden Tabelle finden Sie ein Beispiel dafür ListView.ListViewItemCollection , wie die Elemente ListView des speichert und wie die Auswahl Zustände in einem ListViewBeispiel angezeigt werden.The following table shows an example of how the ListView.ListViewItemCollection stores the items of the ListView and shows their selection states in an example ListView.

IndexIndex ElementItem Auswahl Status in der ListViewSelection state in the ListView
00 Item1Item1 Nicht markiertUnselected
11 Item2Item2 AusgewähltSelected
22 Item3Item3 Nicht markiertUnselected
33 Item4Item4 AusgewähltSelected
44 Item5Item5 AusgewähltSelected

Basierend auf dem ListView.ListViewItemCollection Beispiel in der vorherigen Tabelle wird in der folgenden Tabelle veranschaulicht, ListView.SelectedIndexCollection wie das angezeigt wird.Based on the ListView.ListViewItemCollection example in the previous table, the following table demonstrates how the ListView.SelectedIndexCollection would appear.

IndexIndex Index des ausgewählten Elements in der ListViewItemCollection.Index of selected item in the ListViewItemCollection
00 11
11 33
22 44

Sie können die Eigenschaften und Methoden dieser Klasse verwenden, um eine Vielzahl von Tasks mit der Auflistung auszuführen.You can use the properties and methods of this class to perform a variety of tasks with the collection. Mit Contains der-Methode können Sie feststellen, ob eine Index ListView.ListViewItemCollection Position von einem der in ListView.SelectedIndexCollectiongespeicherten Indizes entspricht.The Contains method enables you to determine whether an index position from the ListView.ListViewItemCollection is one of the indexes stored in the ListView.SelectedIndexCollection. Wenn Sie wissen, dass das Element in der Auflistung angezeigt wird, können Sie IndexOf die-Methode verwenden, um die Position des Indexes ListView.SelectedIndexCollectionin der zu bestimmen.Once you know that the item is in the collection, you can use the IndexOf method to determine the position of the index in the ListView.SelectedIndexCollection.

Konstruktoren

ListView.SelectedIndexCollection(ListView)

Initialisiert eine neue Instanz der ListView.SelectedIndexCollection-Klasse.Initializes a new instance of the ListView.SelectedIndexCollection class.

Eigenschaften

Count

Ruft die Anzahl der Elemente in der Auflistung ab.Gets the number of items in the collection.

IsReadOnly

Ruft einen Wert ab, der angibt, ob die Auflistung schreibgeschützt ist.Gets a value indicating whether the collection is read-only.

Item[Int32]

Ruft den Indexwert am angegebenen Index in der Auflistung ab.Gets the index value at the specified index within the collection.

Methoden

Add(Int32)

Fügt der Auflistung am angegebenen Index im Items-Array das Element hinzu.Adds the item at the specified index in the Items array to the collection.

Clear()

Löscht die Elemente in der Auflistung.Clears the items in the collection.

Contains(Int32)

Bestimmt, ob der angegebene Index in der Auflistung enthalten ist.Determines whether the specified index is located in the collection.

CopyTo(Array, Int32)

Kopiert die gesamte Auflistung an eine angegebene Position in einem vorhandenen Array.Copies the entire collection into an existing array at a specified location within the array.

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetEnumerator()

Gibt einen Enumerator zurück, mit dem die Auflistung der Indizes ausgewählter Elemente durchlaufen werden kann.Returns an enumerator that can be used to iterate through the selected index collection.

GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
IndexOf(Int32)

Gibt den Index in der ListView.SelectedIndexCollection des angegebenen Indexes aus der ListView.ListViewItemCollection des ListView-Steuerelements zurück.Returns the index within the ListView.SelectedIndexCollection of the specified index from the ListView.ListViewItemCollection of the ListView control.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
Remove(Int32)

Entfernt das Element am angegebenen Index in der Items-Auflistung aus der ListView.SelectedIndexCollection.Removes the item at the specified index in the Items collection from the ListView.SelectedIndexCollection.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

ICollection.IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf die Auflistung synchronisiert ist (threadsicher).Gets a value indicating whether access to the collection is synchronized (thread safe).

ICollection.SyncRoot

Ruft ein Objekt ab, mit dem der Zugriff auf die Steuerelementauflistung synchronisiert werden kannGets an object that can be used to synchronize access to the collection of controls.

IList.Add(Object)

Fügt der Auflistung ein Element hinzu.Adds an item to the collection.

IList.Clear()

Entfernt alle Elemente aus der Auflistung.Removes all items from the collection.

IList.Contains(Object)

Bestimmt, ob das angegebene Element in der Auflistung enthalten ist.Determines whether the specified item is located in the collection.

IList.IndexOf(Object)

Gibt den Index in der ListView.SelectedIndexCollection zurück.Returns the index in the ListView.SelectedIndexCollection. Die ListView.SelectedIndexCollection enthält die Indizes ausgewählter Elemente in der ListView.ListViewItemCollection des ListView-Steuerelements.The ListView.SelectedIndexCollection contains the indexes of selected items in the ListView.ListViewItemCollection of the ListView control.

IList.Insert(Int32, Object)

Fügt ein Element am angegebenen Index in die Auflistung ein.Inserts an item into the collection at a specified index.

IList.IsFixedSize

Ruft einen Wert ab, der angibt, ob das ListView.SelectedIndexCollection eine feste Größe aufweist.Gets a value indicating whether the ListView.SelectedIndexCollection has a fixed size.

IList.Item[Int32]

Ruft ein Objekt in der Auflistung ab oder legt es fest.Gets or sets an object in the collection.

IList.Remove(Object)

Entfernt das erste Vorkommen eines angegebenen Elements aus der Auflistung.Removes the first occurrence of a specified item from the collection.

IList.RemoveAt(Int32)

Entfernt ein Element am angegebenen Index aus der Auflistung.Removes an item from the collection at a specified index.

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ umCasts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen TypsFilters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.Enables parallelization of a query.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.Converts an IEnumerable to an IQueryable.

Gilt für: