ListView.ListViewItemCollection (Clase)
Actualización: noviembre 2007
Representa la colección de elementos de un control ListView o que están asignados a ListViewGroup.
Ensamblado: System.Windows.Forms (en System.Windows.Forms.dll)
ListView.ListViewItemCollection almacena los elementos mostrados en un control ListView o asignados a ListViewGroup. Hay otras dos colecciones definidas en la clase ListView que permiten determinar los elementos seleccionados en un control ListView. La clase ListView.SelectedListViewItemCollection proporciona métodos y propiedades para determinar los elementos seleccionados en un control ListView, mientras que la clase ListView.SelectedIndexCollection permite determinar los índices seleccionados en el ListView.ListViewItemCollection de un control ListView. Además de las clases de colección de selección, también existen dos clases que permiten determinar los elementos activados en esta colección (cuando la propiedad CheckBoxes del control ListView está establecida en true).
Hay varias maneras de agregar elementos a la colección. El método Add agrega un solo elemento a la colección. Para agregar varios elementos a la colección, hay que crear una matriz de elementos y pasarla al método AddRange. Si desea insertar un elemento en una ubicación específica de la colección, puede utilizar el método Insert. Para quitar elementos, utilice el método Remove o el método RemoveAt si conoce la ubicación del elemento en la colección. El método Clear permite quitar todos los elementos de la colección en lugar de utilizar el método Remove para quitar un solo elemento cada la vez.
Además de los métodos y las propiedades para agregar y quitar elementos, el ListView.ListViewItemCollection también proporciona métodos para buscar elementos en la colección. El método Contains permite determinar si un elemento es un miembro de la colección. Cuando sepa que el elemento se encuentra en la colección, podrá utilizar el método IndexOf para determinar dónde se encuentra exactamente.
En el ejemplo de código siguiente se muestra cómo agregar elementos a una ListView.ListViewItemCollection. 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 constructor del formulario o el control de eventos Load.
// 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 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
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.