Exportar (0) Imprimir
Expandir todo

ListView.SelectedListViewItemCollection (Clase)

Representa la colección de elementos seleccionados en un control de vista de lista.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

public class SelectedListViewItemCollection : IList, ICollection, IEnumerable
public class SelectedListViewItemCollection implements IList, ICollection, 
	IEnumerable
public class SelectedListViewItemCollection implements IList, ICollection, 
	IEnumerable
No aplicable.

Un ListView.SelectedListViewItemCollection almacena los elementos seleccionados en un control ListView. Los elementos incluidos en la colección ListView.SelectedListViewItemCollection son elementos que pertenecen también a la colección ListView.ListViewItemCollection. El ListView.ListViewItemCollection almacena todos los elementos que se muestran en el ListView.

En la siguiente tabla se muestra un ejemplo de cómo la colección ListView.ListViewItemCollection almacena los elementos de ListView y sus estados de selección en un control ListView de ejemplo.

Índice

Elemento

Estado de selección en el ListView

0

Elemento1

No seleccionado

1

Elemento2

Seleccionado

2

Elemento3

No seleccionado

3

Elemento4

Seleccionado

4

Elemento5

Seleccionado

Basándose en el ejemplo de la colección ListView.ListViewItemCollection de la tabla anterior, en la siguiente tabla se muestra cómo aparecería la colección ListView.SelectedListViewItemCollection.

Índice

Elemento seleccionado en el ListViewItemCollection

0

Elemento2

1

Elemento4

2

Elemento5

Los métodos y propiedades de esta clase se pueden utilizar para realizar diversas tareas con la colección. El método Contains permite determinar si un elemento de la clase ListView.ListViewItemCollection es miembro de la colección ListView.SelectedListViewItemCollection. Una vez que se sabe que el elemento está en la colección, se puede utilizar el método IndexOf para determinar la posición del elemento en la colección ListView.SelectedListViewItemCollection.

En el siguiente ejemplo de código se muestra cómo usar la propiedad SelectedItems, el evento SelectedIndexChanged, los miembros de HeaderStyle y la clase ListView.SelectedListViewItemCollection. Para ejecutar este ejemplo, pegue el siguiente código en un formulario que contenga un objeto ListView denominado ListView1 y un control TextBox denominado TextBox1. Llame al método InitializeListView desde el controlador de eventos Load o el constructor del formulario. Este ejemplo exige que el controlador de eventos esté correctamente asociado al 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.
	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);
	}
	
...

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

    // 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.set_BackColor(
            System.Drawing.SystemColors.get_Control());
        this.listView1.set_Dock(System.Windows.Forms.DockStyle.Top);
        this.listView1.set_Location(new System.Drawing.Point(0, 0));
        this.listView1.set_Name("listView1");
        this.listView1.set_Size(new System.Drawing.Size(292, 130));
        this.listView1.set_TabIndex(0);
        this.listView1.set_View(System.Windows.Forms.View.Details);
        this.listView1.set_MultiSelect(true);
        this.listView1.set_HideSelection(false);
        this.listView1.set_HeaderStyle(ColumnHeaderStyle.Nonclickable);

        ColumnHeader columnHeader1 = new ColumnHeader();
        columnHeader1.set_Text("Breakfast Item");
        columnHeader1.set_TextAlign(HorizontalAlignment.Left);
        columnHeader1.set_Width(146);

        ColumnHeader columnHeader2 = new ColumnHeader();
        columnHeader2.set_Text("Price Each");
        columnHeader2.set_TextAlign(HorizontalAlignment.Center);
        columnHeader2.set_Width(142);

        this.listView1.get_Columns().Add(columnHeader1);
        this.listView1.get_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.get_Length(); count++) {
            ListViewItem listItem = new ListViewItem(
                foodList.get_Item(count).ToString());
            listItem.get_SubItems().Add(foodPrice.get_Item(count).ToString());
            listView1.get_Items().Add(listItem);
        }
        this.get_Controls().Add(listView1);
    } //InitializeListView
...

    // 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.get_SelectedItems();

        double price = 0.0;
        for (int iCtr = 0; iCtr < breakfast.get_Count(); iCtr++) {
            ListViewItem item = breakfast.get_Item(iCtr);
            price += System.Double.Parse(item.get_SubItems().get_Item(1).
                get_Text().ToString());
        }
        // Output the price to textBox1.
        textBox1.set_Text(System.Convert.ToString(price));
    } //listView1_SelectedIndexChanged_UsingItems

System.Object
  System.Windows.Forms.ListView.SelectedListViewItemCollection

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0
Mostrar:
© 2014 Microsoft