ListView.SelectedListViewItemCollection Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta la raccolta di elementi selezionati in un controllo visualizzazione elenco.
public: ref class ListView::SelectedListViewItemCollection : System::Collections::IList
public class ListView.SelectedListViewItemCollection : System.Collections.IList
[System.ComponentModel.ListBindable(false)]
public class ListView.SelectedListViewItemCollection : System.Collections.IList
type ListView.SelectedListViewItemCollection = class
interface IList
interface ICollection
interface IEnumerable
[<System.ComponentModel.ListBindable(false)>]
type ListView.SelectedListViewItemCollection = class
interface IList
interface ICollection
interface IEnumerable
Public Class ListView.SelectedListViewItemCollection
Implements IList
- Ereditarietà
-
ListView.SelectedListViewItemCollection
- Attributi
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato l'uso dell'evento , dell'evento SelectedItemse SelectedIndexChanged dei membri e della HeaderStyle classe . ListView.SelectedListViewItemCollection Per eseguire questo esempio, incollare il codice seguente in una maschera contenente un ListView oggetto denominato ListView1 e un TextBox oggetto denominato TextBox1. Chiamare il InitializeListView metodo dal costruttore del modulo o dal Load gestore eventi. Questo esempio richiede che il gestore eventi sia associato correttamente all'evento SelectedIndexChanged
// 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 SelectedItems property to retrieve and tally the price
// of the selected menu items.
void ListView1_SelectedIndexChanged_UsingItems( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
ListView::SelectedListViewItemCollection^ breakfast = this->ListView1->SelectedItems;
double price = 0.0;
System::Collections::IEnumerator^ myEnum = breakfast->GetEnumerator();
while ( myEnum->MoveNext() )
{
ListViewItem^ item = safe_cast<ListViewItem^>(myEnum->Current);
price += Double::Parse( item->SubItems[ 1 ]->Text );
}
// Output the price to TextBox1.
TextBox1->Text = price.ToString();
}
// Uses the SelectedItems property to retrieve and tally the price
// of the selected menu items.
private void ListView1_SelectedIndexChanged_UsingItems(
object sender, System.EventArgs e)
{
ListView.SelectedListViewItemCollection breakfast =
this.ListView1.SelectedItems;
double price = 0.0;
foreach ( ListViewItem item in breakfast )
{
price += Double.Parse(item.SubItems[1].Text);
}
// Output the price to TextBox1.
TextBox1.Text = price.ToString();
}
' Uses the SelectedItems property to retrieve and tally the price
' of the selected menu items.
Private Sub ListView1_SelectedIndexChanged_UsingItems _
(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles ListView1.SelectedIndexChanged
Dim breakfast As ListView.SelectedListViewItemCollection = _
Me.ListView1.SelectedItems
Dim item As ListViewItem
Dim price As Double = 0.0
For Each item In breakfast
price += Double.Parse(item.SubItems(1).Text)
Next
' Output the price to TextBox1.
TextBox1.Text = CType(price, String)
End Sub
Commenti
Un ListView.SelectedListViewItemCollection oggetto archivia gli elementi selezionati in un ListView controllo . Gli elementi archiviati in ListView.SelectedListViewItemCollection sono elementi contenuti in ListView.ListViewItemCollection. Archivia ListView.ListViewItemCollection tutti gli elementi visualizzati in ListView.
Nella tabella seguente viene illustrato un esempio di come archivia gli elementi dell'oggetto ListView.ListViewItemCollectionListView e i relativi stati di selezione in un controllo di esempio ListView .
| Indice | Item | Stato di selezione in ListView |
|---|---|---|
| 0 | Item1 | Opzione non selezionata |
| 1 | Item2 | Selezionato |
| 2 | Item3 | Opzione non selezionata |
| 3 | Item4 | Selezionato |
| 4 | Item5 | Selezionato |
In base all'esempio ListView.ListViewItemCollection nella tabella precedente, nella tabella seguente viene illustrato come verrebbe visualizzato .ListView.SelectedListViewItemCollection
| Indice | Elemento selezionato in ListViewItemCollection |
|---|---|
| 0 | Item2 |
| 1 | Item4 |
| 2 | Item5 |
È possibile utilizzare le proprietà e i metodi di questa classe per eseguire un'ampia gamma di attività con la raccolta. Il Contains metodo consente di determinare se un elemento della ListView.ListViewItemCollection classe è un membro di ListView.SelectedListViewItemCollection. Dopo aver rilevato che l'elemento si trova nell'insieme, è possibile utilizzare il IndexOf metodo per determinare la posizione dell'elemento nell'oggetto ListView.SelectedListViewItemCollection.
Costruttori
| Nome | Descrizione |
|---|---|
| ListView.SelectedListViewItemCollection(ListView) |
Inizializza una nuova istanza della classe ListView.SelectedListViewItemCollection. |
Proprietà
| Nome | Descrizione |
|---|---|
| Count |
Ottiene il numero di elementi nell'insieme. |
| IsReadOnly |
Ottiene un valore che indica se l'insieme è di sola lettura. |
| Item[Int32] |
Ottiene l'elemento in corrispondenza dell'indice specificato all'interno dell'insieme. |
| Item[String] |
Ottiene un elemento con la chiave specificata dall'insieme. |
Metodi
| Nome | Descrizione |
|---|---|
| Clear() |
Cancella tutte le selezioni nella visualizzazione elenco. |
| Contains(ListViewItem) |
Determina se l'elemento specificato si trova nella raccolta. |
| ContainsKey(String) |
Determina se un elemento con la chiave specificata è contenuto nell'insieme. |
| CopyTo(Array, Int32) |
Copia l'intera raccolta in una matrice esistente in una posizione specificata all'interno della matrice. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetEnumerator() |
Restituisce un enumeratore che può essere utilizzato per scorrere l'insieme di elementi selezionato. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| IndexOf(ListViewItem) |
Restituisce l'indice all'interno dell'insieme dell'elemento specificato. |
| IndexOfKey(String) |
Restituisce l'indice della prima occorrenza dell'elemento con la chiave specificata. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| ICollection.IsSynchronized |
Ottiene un valore che indica se l'accesso alla raccolta è sincronizzato (thread-safe). |
| ICollection.SyncRoot |
Ottiene un oggetto che può essere utilizzato per sincronizzare l'accesso all'insieme di controlli. |
| IList.Add(Object) |
Aggiunge un elemento alla raccolta. |
| IList.Contains(Object) |
Determina se l'elemento specificato si trova nella raccolta. |
| IList.IndexOf(Object) |
Restituisce l'indice, all'interno dell'insieme, dell'elemento specificato. |
| IList.Insert(Int32, Object) |
Inserisce un elemento nella raccolta in corrispondenza di un indice specificato. |
| IList.IsFixedSize |
Ottiene un valore che indica se la raccolta ha una dimensione fissa. |
| IList.Item[Int32] |
Ottiene o imposta un oggetto dall'insieme. |
| IList.Remove(Object) |
Rimuove la prima occorrenza di un elemento specificato dall'insieme. |
| IList.RemoveAt(Int32) |
Rimuove un elemento dalla raccolta in corrispondenza di un indice specificato. |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| AsParallel(IEnumerable) |
Abilita la parallelizzazione di una query. |
| AsQueryable(IEnumerable) |
Converte un IEnumerable in un IQueryable. |
| Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un IEnumerable al tipo specificato. |
| OfType<TResult>(IEnumerable) |
Filtra gli elementi di un IEnumerable in base a un tipo specificato. |