ListView.SelectedIndexCollection Classe

Définition

Représente la collection qui contient les index des éléments sélectionnés dans un contrôle ListView.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
Héritage
ListView.SelectedIndexCollection
Attributs
Implémente

Exemples

L’exemple de code suivant montre comment utiliser les SelectedIndices HeaderStyle membres SelectedIndexChanged, et et la ListView.SelectedIndexCollection classe.The following code example demonstrates how to use the SelectedIndices, SelectedIndexChanged, and HeaderStyle members and the ListView.SelectedIndexCollection class. Pour exécuter cet exemple, collez le code suivant dans un formulaire qui contient ListView un objet ListView1 nommé et TextBox un TextBox1nommé.To run this example, paste the following code into a form that contains a ListView object named ListView1 and a TextBox named TextBox1. Appelez la InitializeListView méthode à partir du constructeur du formulaire Load ou du gestionnaire d’événements.Call the InitializeListView method from the form's constructor or Load event handler. Cet exemple requiert que le gestionnaire d’événements soit correctement associé à SelectedIndexChanged l’événement.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

Remarques

Stocke les index des éléments sélectionnés dans un ListView contrôle. ListView.SelectedIndexCollectionA ListView.SelectedIndexCollection stores the indexes to the selected items in a ListView control. Les index stockés dans le ListView.SelectedIndexCollection sont des positions d’index dans le. ListView.ListViewItemCollectionThe indexes stored in the ListView.SelectedIndexCollection are index positions within the ListView.ListViewItemCollection. Le ListView.ListViewItemCollection stocke tous les éléments affichés ListView dans le contrôle.The ListView.ListViewItemCollection stores all items displayed in the ListView control.

Le tableau suivant montre un exemple de la façon ListView.ListViewItemCollection dont le stocke les ListView éléments de et affiche leurs États de sélection ListViewdans un exemple.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 ÉlémentItem État de sélection dans le ListViewSelection state in the ListView
00 Élément1Item1 Non sélectionnéUnselected
11 SpécifiéItem2 SelectedSelected
22 Item3Item3 Non sélectionnéUnselected
33 Item4 (Item4 SelectedSelected
44 Item5 (Item5 SelectedSelected

Selon l' ListView.ListViewItemCollection exemple du tableau précédent, le tableau suivant montre ListView.SelectedIndexCollection comment s’afficherait.Based on the ListView.ListViewItemCollection example in the previous table, the following table demonstrates how the ListView.SelectedIndexCollection would appear.

IndexIndex Index de l’élément sélectionné dans ListViewItemCollectionIndex of selected item in the ListViewItemCollection
00 11
11 33
22 44

Vous pouvez utiliser les propriétés et les méthodes de cette classe pour effectuer diverses tâches avec la collection.You can use the properties and methods of this class to perform a variety of tasks with the collection. La Contains méthode vous permet de déterminer si une position d’index ListView.ListViewItemCollection de est l’un des index stockés dans le ListView.SelectedIndexCollection.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. Une fois que vous savez que l’élément se trouve dans la collection, vous IndexOf pouvez utiliser la méthode pour déterminer la position de l' ListView.SelectedIndexCollectionindex dans le.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.

Constructeurs

ListView.SelectedIndexCollection(ListView)

Initialise une nouvelle instance de la classe ListView.SelectedIndexCollection.Initializes a new instance of the ListView.SelectedIndexCollection class.

Propriétés

Count

Obtient le nombre d’éléments de la collection.Gets the number of items in the collection.

IsReadOnly

Obtient une valeur indiquant si la collection est en lecture seule.Gets a value indicating whether the collection is read-only.

Item[Int32]

Obtient la valeur d'index à l'index spécifié dans la collection.Gets the index value at the specified index within the collection.

Méthodes

Add(Int32)

Ajoute l'élément situé à l'index spécifié du tableau Items dans la collection.Adds the item at the specified index in the Items array to the collection.

Clear()

Efface les éléments contenus dans la collection.Clears the items in the collection.

Contains(Int32)

Détermine si l'index spécifié se trouve dans la collection.Determines whether the specified index is located in the collection.

CopyTo(Array, Int32)

Copie l'ensemble de la collection dans un tableau existant, à un emplacement spécifié dans le tableau.Copies the entire collection into an existing array at a specified location within the array.

Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetEnumerator()

Retourne un énumérateur qui peut être utilisé pour itérer au sein de la collection d'index sélectionnés.Returns an enumerator that can be used to iterate through the selected index collection.

GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
IndexOf(Int32)

Retourne l'index dans ListView.SelectedIndexCollection de l'index spécifié du ListView.ListViewItemCollection du contrôle ListView.Returns the index within the ListView.SelectedIndexCollection of the specified index from the ListView.ListViewItemCollection of the ListView control.

MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
Remove(Int32)

Supprime l'élément à l'index spécifié dans la collection Items de ListView.SelectedIndexCollection.Removes the item at the specified index in the Items collection from the ListView.SelectedIndexCollection.

ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)

Implémentations d’interfaces explicites

ICollection.IsSynchronized

Obtient une valeur indiquant si l’accès à la collection est synchronisé (thread-safe).Gets a value indicating whether access to the collection is synchronized (thread safe).

ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l'accès à la collection de contrôles.Gets an object that can be used to synchronize access to the collection of controls.

IList.Add(Object)

Ajoute un élément à la collection.Adds an item to the collection.

IList.Clear()

Supprime tous les éléments de la collection.Removes all items from the collection.

IList.Contains(Object)

Détermine si l'élément spécifié se trouve dans la collection.Determines whether the specified item is located in the collection.

IList.IndexOf(Object)

Retourne l'index dans ListView.SelectedIndexCollection.Returns the index in the ListView.SelectedIndexCollection. ListView.SelectedIndexCollection contient les index d'éléments sélectionnés dans ListView.ListViewItemCollection du contrôle ListView.The ListView.SelectedIndexCollection contains the indexes of selected items in the ListView.ListViewItemCollection of the ListView control.

IList.Insert(Int32, Object)

Insère un élément dans la collection à un index spécifié.Inserts an item into the collection at a specified index.

IList.IsFixedSize

Obtient une valeur indiquant si ListView.SelectedIndexCollection est de taille fixe.Gets a value indicating whether the ListView.SelectedIndexCollection has a fixed size.

IList.Item[Int32]

Obtient ou définit un objet de la collection.Gets or sets an object in the collection.

IList.Remove(Object)

Supprime la première occurrence d’un élément spécifié de la collection.Removes the first occurrence of a specified item from the collection.

IList.RemoveAt(Int32)

Supprime un élément de la collection au niveau de l'index spécifié.Removes an item from the collection at a specified index.

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

S’applique à