Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase ListItemCollection

 

Publicado: octubre de 2016

Una colección de objetos ListItem en un control de lista. Esta clase no puede heredarse.

Espacio de nombres:   System.Web.UI.WebControls
Ensamblado:  System.Web (en System.Web.dll)

System.Object
  System.Web.UI.WebControls.ListItemCollection

public sealed class ListItemCollection : ICollection, IEnumerable, 
	IList, IStateManager

NombreDescripción
System_CAPS_pubmethodListItemCollection()

Inicializa una nueva instancia de la clase ListItemCollection.

NombreDescripción
System_CAPS_pubpropertyCapacity

Obtiene o establece el número máximo de elementos que la ListItemCollection puede almacenar.

System_CAPS_pubpropertyCount

Obtiene el número de ListItem objetos de la colección.

System_CAPS_pubpropertyIsReadOnly

Obtiene un valor que indica si ListItemCollection es de solo lectura.

System_CAPS_pubpropertyIsSynchronized

Obtiene un valor que indica si el acceso a la ListItemCollection está sincronizado (es seguro para la ejecución de subprocesos).

System_CAPS_pubpropertyItem[Int32]

Obtiene un ListItem en el índice especificado de la colección.

System_CAPS_pubpropertySyncRoot

Obtiene el objeto que puede utilizarse para sincronizar el acceso a la ListItemCollection.

NombreDescripción
System_CAPS_pubmethodAdd(ListItem)

Anexa el texto especificado ListItem al final de la colección.

System_CAPS_pubmethodAdd(String)

Anexa un ListItem al final de la colección que representa la cadena especificada.

System_CAPS_pubmethodAddRange(ListItem[])

Agrega los elementos de una matriz de ListItem objetos a la colección.

System_CAPS_pubmethodClear()

Quita todos los objetos ListItem de la colección.

System_CAPS_pubmethodContains(ListItem)

Determina si la colección contiene el elemento especificado.

System_CAPS_pubmethodCopyTo(Array, Int32)

Copia los elementos de la ListItemCollection especificado System.Array, empezando por el índice especificado.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_pubmethodFindByText(String)

Busca en la colección un ListItem con una Text la propiedad del texto especificado.

System_CAPS_pubmethodFindByValue(String)

Busca en la colección un ListItem con un Value propiedad que contiene el valor especificado.

System_CAPS_pubmethodGetEnumerator()

Devuelve un System.Collections.IEnumerator implementado que todos los contiene ListItem objetos en el ListItemCollection.

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodIndexOf(ListItem)

Determina el valor de índice que representa la posición del objeto ListItem en la colección.

System_CAPS_pubmethodInsert(Int32, ListItem)

Inserta el objeto ListItem en la colección en la ubicación de índice especificada.

System_CAPS_pubmethodInsert(Int32, String)

Inserta un ListItem que representa la cadena especificada en la colección en el índice especificado.

System_CAPS_pubmethodRemove(ListItem)

Quita el objeto ListItem especificado de la colección.

System_CAPS_pubmethodRemove(String)

Quita un ListItem de la colección que representa la cadena especificada.

System_CAPS_pubmethodRemoveAt(Int32)

Quita el ListItem en el índice especificado de la colección.

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

NombreDescripción
System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Add(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea Add.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Contains(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea Contains.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.IndexOf(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea IndexOf.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Insert(Int32, Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea Insert.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Remove(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea Remove.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.LoadViewState(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Carga el estado guardado anteriormente.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.SaveViewState()

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Devuelve un objeto que contiene los cambios de estado.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.TrackViewState()

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Inicia el seguimiento del estado de los cambios.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.IsFixedSize

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea IsFixedSize.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.Item[Int32]

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea Item.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIStateManager.IsTrackingViewState

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Para una descripción de este miembro, vea IsTrackingViewState.

NombreDescripción
System_CAPS_pubmethodAsParallel()

Sobrecargado. Habilita la paralelización de una consulta.(Definido por ParallelEnumerable).

System_CAPS_pubmethodAsQueryable()

Sobrecargado. Convierte un IEnumerable para un IQueryable.(Definido por Queryable).

System_CAPS_pubmethodCast<TResult>()

Convierte los elementos de un IEnumerable al tipo especificado.(Definido por Enumerable).

System_CAPS_pubmethodOfType<TResult>()

Filtra los elementos de un IEnumerable basado en un tipo especificado.(Definido por Enumerable).

La ListItemCollection clase representa una colección de ListItem objetos. El ListItem objetos, a su vez, representan los elementos que se muestran en controles de lista, como el ListBox. Para recuperar mediante programación ListItem objetos desde un control de lista, utilice uno de los métodos siguientes:

  • Utilice el indizador para obtener un único ListItem desde la colección mediante una notación de matriz.

  • Utilice la CopyTo método para copiar el contenido de la colección en un System.Array objeto, que puede utilizarse para obtener elementos de la colección.

  • Utilice la GetEnumerator método para crear un System.Collections.IEnumerator objeto implementado, que puede utilizarse para obtener elementos de la colección.

  • Use foreach (C#) o For Each (Visual Basic) para recorrer en iteración la colección.

El Count propiedad especifica el número total de elementos de la colección y se utiliza normalmente para determinar el límite superior de la colección. Puede agregar y quitar elementos de la colección mediante el Add y Remove métodos.

En el ejemplo de código siguiente se muestra cómo crear ListItemCollection objetos, agregar elementos a las colecciones y quitar elementos de las colecciones. En el ejemplo, el ListItemCollection denominado listBoxData se utiliza como origen de datos para un ListBox control denominado ListBox1, y el ListItemCollection denominado ddBoxData se utiliza como origen de datos para un DropDownList control denominado DropDownList1.

<%@ Page language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
    private void Page_Load(object sender, System.EventArgs e)
    {
        // If this isn't the first time the page is loaded in this session,
        // then don't recreate the DataTables.
        if (!IsPostBack)
        {
            // Create a new ListItemCollection.
            ListItemCollection listBoxData = new ListItemCollection();
            // Add items to the collection.
            listBoxData.Add(new ListItem("apples"));
            listBoxData.Add(new ListItem("bananas"));
            listBoxData.Add(new ListItem("cherries"));
            listBoxData.Add("grapes");
            listBoxData.Add("mangos");
            listBoxData.Add("oranges");
            // Set the ListItemCollection as the data source for ListBox1.
            ListBox1.DataSource = listBoxData;
            ListBox1.DataBind();

            // Create a new ListItemCollection.
            ListItemCollection ddBoxData = new ListItemCollection();
            // For now, just bind the data to the DropDownList.
            DropDownList1.DataSource = ddBoxData;
            DropDownList1.DataBind();
        }        
    }

    private void moveButton1_Click(object sender, System.EventArgs e)
    {
        //Set the SelectedIndex to -1 so no items are selected.
        // The new item will be set as the selected item when it is added.
        DropDownList1.SelectedIndex = -1;
        // Add the selected item to DropDownList1.
        DropDownList1.Items.Add(ListBox1.SelectedItem);
        // Delete the selected item from ListBox1.
        ListBox1.Items.Remove(ListBox1.SelectedItem);
    }

    private void moveButton2_Click(object sender, System.EventArgs e)
    {
        //Set the SelectedIndex to -1 so no items are selected.
        // The new item will be set as the selected item when it is added.
        ListBox1.SelectedIndex = -1;
        // Add the selected item to ListBox1.
        ListBox1.Items.Add(DropDownList1.SelectedItem);
        //Delete the selected item from DropDownList1.
        DropDownList1.Items.Remove(DropDownList1.SelectedItem);
    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title>ASP.NET Example</title>
</head>

    <body>
        <form id="form1" runat="server">
            <table cellpadding="6" border="0">
                <tr>
                    <td rowspan="2" valign="top">
                        <asp:ListBox id="ListBox1" runat="server" 
                            SelectionMode="Single" Width="100px">
                        </asp:ListBox>
                    </td>

                    <td>
                        <asp:Button id="moveButton1" runat="server" Text="Move -->"
                            Width="100px" OnClick="moveButton1_Click"></asp:Button>
                    </td>

                    <td rowspan="2" valign="top">
                        <asp:DropDownList Runat="server" ID="DropDownList1"
                            Width="100px">
                        </asp:DropDownList>
                    </td>
                </tr>

                <tr>
                    <td>
                        <asp:Button ID="moveButton2" Runat="server" Text="<-- Move"
                            Width="100px" onClick="moveButton2_Click"></asp:Button>
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>
<!-- This example demonstrates how to select multiple items from a DataList and add the 
selected items to a DataGrid. The example uses a foreach loop to iterate through 
the ListItem objects in the ListItemCollection of ListBox1. -->

<%@ Page language="c#" AutoEventWireup="true"%>
<%@ Import Namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script language="C#" runat="server">
            // Global Variables.
            private DataView dv;
            private DataTable dt = new DataTable();

            private void Page_Load(object sender, System.EventArgs e)
            {
                // Set the number of rows displayed in the ListBox to be
                // the number of items in the ListBoxCollection.
                ListBox1.Rows = ListBox1.Items.Count;

                // If the DataTable is already stored in the Web form's default
                // HttpSessionState variable, then don't recreate the DataTable.
                if (Session["data"] == null)
                {
                    // Add columns to the DataTable.
                    dt.Columns.Add(new DataColumn("Item"));
                    dt.Columns.Add(new DataColumn("Price"));
            // Store the DataTable in the Session variable so it can 
                    // be accessed again later.
                    Session["data"] = dt;

                    // Use the table to create a DataView, because the DataGrid
                    // can only bind to a data source that implements IEnumerable.
                    dv = new DataView(dt);

                    // Set the DataView as the data source, and bind it to the DataGrid.
                    DataGrid1.DataSource = dv;
                    DataGrid1.DataBind();
                }
            }

            private void addButton_Click(object sender, System.EventArgs e)
            {
                // Add the items selected in ListBox1 to DataGrid1.
                foreach (ListItem item in ListBox1.Items)
                {
                    if (item.Selected)
                    {
                        // Add the item to the DataGrid.
                        // First, get the DataTable from the Session variable.
                        dt = (DataTable)Session["data"];

                        if (dt != null)
                        { 
                            // Create a new DataRow in the DataTable.
                            DataRow dr = dt.NewRow();
                            // Add the item to the new DataRow.
                            dr["Item"] = item.Text;
                            // Add the item's value to the DataRow.
                            dr["Price"] = item.Value;
                            // Add the DataRow to the DataTable.
                            dt.Rows.Add(dr);

                            // Rebind the data to DataGrid1.
                            dv = new DataView(dt);
                            DataGrid1.DataSource = dv;
                            DataGrid1.DataBind();
                        }
                    }
                }
            }
        </script>
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title> ListItemCollection Example </title>
</head>

    <body>
        <form id="form1" runat="server">

            <h3> ListItemCollection Example </h3>

            <table cellpadding="6" border="0">
                <tr>
                    <td valign="top">
                        <asp:ListBox id="ListBox1" runat="server" SelectionMode="Multiple">
                            <asp:ListItem Value=".89">apples</asp:ListItem>
                            <asp:ListItem Value=".49">bananas</asp:ListItem>
                            <asp:ListItem Value="2.99">cherries</asp:ListItem>
                            <asp:ListItem Value="1.49">grapes</asp:ListItem>
                            <asp:ListItem Value="2.00">mangos</asp:ListItem>
                            <asp:ListItem Value="1.09">oranges</asp:ListItem>
                        </asp:ListBox>
                    </td>

                    <td valign="top">
                        <asp:Button id="addButton" runat="server" Text="Add -->"
                            Width="100px" OnClick="addButton_Click"></asp:Button>
                    </td>

                    <td valign="top">
                        <asp:DataGrid Runat="server" ID="DataGrid1" CellPadding="4">
                        </asp:DataGrid>
                    </td>
                </tr>
            </table>        
        </form>
    </body>
</html>

.NET Framework
Disponible desde 1.1

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: