ListItemCollection Sınıf

Tanım

ListItemBir liste denetimindeki nesne koleksiyonu.A collection of ListItem objects in a list control. Bu sınıf devralınamaz.This class cannot be inherited.

public ref class ListItemCollection sealed : System::Collections::IList, System::Web::UI::IStateManager
public sealed class ListItemCollection : System.Collections.IList, System.Web.UI.IStateManager
type ListItemCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
    interface IStateManager
type ListItemCollection = class
    interface ICollection
    interface IEnumerable
    interface IList
    interface IStateManager
Public NotInheritable Class ListItemCollection
Implements IList, IStateManager
Devralma
ListItemCollection
Uygulamalar

Örnekler

Aşağıdaki kod örneğinde ListItemCollection nesne oluşturma, koleksiyonlara öğe ekleme ve koleksiyonlardan öğeleri kaldırma gösterilmektedir.The following code example demonstrates creating ListItemCollection objects, adding items to the collections, and removing items from the collections. Örnekte, ListItemCollection adlı listBoxData bir denetim için veri kaynağı olarak adlandırılan, çağrılan ListBox ListBox1 ListItemCollection ddBoxData bir denetim için veri kaynağı olarak kullanılır DropDownList DropDownList1 .In the example, the ListItemCollection named listBoxData is used as the data source for a ListBox control called ListBox1, and the ListItemCollection called ddBoxData is used as the data source for a DropDownList control called 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)
        {
// <Snippet5>
            // 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();
//</Snippet5>

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

    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>
<%@ Page language="VB" 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 Sub Page_Load(sender As Object, e As System.EventArgs) Handles MyBase.Load
        ' If this isn't the first time the page is loaded in this session,
        ' then don't recreate the DataTables.
        If Not IsPostBack Then
' <Snippet5>
            ' Create a new ListItemCollection.
            Dim listBoxData As 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()
' </Snippet5>
 
            ' Create a new ListItemCollection.
            Dim ddBoxData As New ListItemCollection()
            ' For now, just bind the data to the DropDownList.
            DropDownList1.DataSource = ddBoxData
            DropDownList1.DataBind()
        End If
    End Sub 'Page_Load

    Private Sub moveButton1_Click(sender As Object, e As System.EventArgs) 
        '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
' <Snippet6>
        ' Add the selected item to DropDownList1.
        DropDownList1.Items.Add(ListBox1.SelectedItem)
        ' Delete the selected item from ListBox1.
        ListBox1.Items.Remove(ListBox1.SelectedItem)
' </Snippet6>
    End Sub 'moveButton1_Click
   
   
    Private Sub moveButton2_Click(sender As Object, e As System.EventArgs)
        '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)
    End Sub 'moveButton2_Click
</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. -->

<!-- This example demonstrates how to select multiple items from a DataList 
and add the selected items to a DataGrid. The example uses a For Each 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)
            {
// <Snippet4>
                // Set the number of rows displayed in the ListBox to be
                // the number of items in the ListBoxCollection.
                ListBox1.Rows = ListBox1.Items.Count;
// </Snippet4>

                // 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)
            {
// <Snippet5>
                // 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);
// </Snippet5>

                            // 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>
<%@ Page language="VB" 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">
            ' Global Variables.
            Private dv As DataView
            Private dt As New DataTable()

            Private Sub Page_Load(sender As Object, e As System.EventArgs)
' <Snippet4>
                ' Set the number of rows displayed in the ListBox to be
                ' the number of items in the ListBoxCollection.
                ListBox1.Rows = ListBox1.Items.Count
' </Snippet4>

                ' If the DataTable is already stored in the Web form's default
                ' HttpSessionState variable, then don't recreate the DataTable.
                If Session("data") Is Nothing Then
                    ' 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()
                End If
            End Sub

            Private Sub addButton_Click(sender As Object, e As System.EventArgs)
' <Snippet5>
                ' Add the items selected in ListBox1 to DataGrid1.
                Dim item As ListItem
                For Each item In ListBox1.Items
                    If item.Selected Then
                        ' Add the item to the DataGrid.
                        ' First, get the DataTable from the Session variable.
                        dt = CType(Session("data"), DataTable)
            
                        If  Not (dt Is Nothing) Then
                            ' Create a new DataRow in the DataTable.
                            Dim dr As 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)
' </Snippet5>

                            ' Rebind the data to DataGrid1.
                            dv = new DataView(dt)
                            DataGrid1.DataSource = dv
                            DataGrid1.DataBind()
                        End If
                    End If
                Next item
            End Sub
        </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>

Açıklamalar

ListItemCollectionSınıfı bir nesne koleksiyonunu temsil eder ListItem .The ListItemCollection class represents a collection of ListItem objects. ListItemNesneler, sırasıyla, liste denetimlerinde gösterilecek öğeleri temsil eder ListBox .The ListItem objects, in turn, represent the items displayed in list controls, such as the ListBox. ListItemBir liste denetiminden nesneleri programlı bir şekilde almak için aşağıdaki yöntemlerden birini kullanın:To programmatically retrieve ListItem objects from a list control, use one of following methods:

  • Dizi gösterimini kullanarak koleksiyondan tek tek almak için Dizin oluşturucuyu kullanın ListItem .Use the indexer to get a single ListItem from the collection, using array notation.

  • CopyToKoleksiyon içeriğini bir nesnesine kopyalamak için yöntemini kullanın System.Array . Bu, daha sonra koleksiyondan öğe almak için kullanılabilir.Use the CopyTo method to copy the contents of the collection to a System.Array object, which can then be used to get items from the collection.

  • GetEnumerator System.Collections.IEnumerator Daha sonra koleksiyondan öğe almak için kullanılabilecek, uygulanan bir nesne oluşturmak için yöntemini kullanın.Use the GetEnumerator method to create a System.Collections.IEnumerator implemented object, which can then be used to get items from the collection.

  • foreachKoleksiyonda yinelemek için (C#) veya For Each (Visual Basic) kullanın.Use foreach (C#) or For Each (Visual Basic) to iterate through the collection.

CountÖzelliği koleksiyondaki toplam öğe sayısını belirtir ve genellikle koleksiyonun üst sınırını belirlemede kullanılır.The Count property specifies the total number of items in the collection, and is commonly used to determine the upper bound of the collection. Ve yöntemlerini kullanarak koleksiyondan öğe ekleyebilir ve kaldırabilirsiniz Add Remove .You can add and remove items from the collection by using the Add and Remove methods.

Oluşturucular

ListItemCollection()

ListItemCollection sınıfının yeni bir örneğini başlatır.Initializes a new instance of the ListItemCollection class.

Özellikler

Capacity

Depolayabileceği en fazla öğe sayısını alır veya ayarlar ListItemCollection .Gets or sets the maximum number of items that the ListItemCollection can store.

Count

Koleksiyondaki nesne sayısını alır ListItem .Gets the number of ListItem objects in the collection.

IsReadOnly

ListItemCollection öğesinin salt okunur olup olmadığını belirten bir değer alır.Gets a value indicating whether the ListItemCollection is read-only.

IsSynchronized

Erişiminin ListItemCollection eşitlenip eşitlenmediğini (iş parçacığı açısından güvenli) gösteren bir değer alır.Gets a value indicating whether access to the ListItemCollection is synchronized (thread-safe).

Item[Int32]

ListItemKoleksiyonda belirtilen dizini alır.Gets a ListItem at the specified index in the collection.

SyncRoot

Erişimini eşitlemede kullanılabilecek nesneyi alır ListItemCollection .Gets the object that can be used to synchronize access to the ListItemCollection.

Yöntemler

Add(ListItem)

Belirtilen ' i ListItem koleksiyonun sonuna ekler.Appends the specified ListItem to the end of the collection.

Add(String)

ListItemBelirtilen dizeyi temsil eden koleksiyonun sonuna bir ekler.Appends a ListItem to the end of the collection that represents the specified string.

AddRange(ListItem[])

Öğeleri bir ListItem nesne dizisinde koleksiyona ekler.Adds the items in an array of ListItem objects to the collection.

Clear()

Tüm ListItem nesneleri koleksiyondan kaldırır.Removes all ListItem objects from the collection.

Contains(ListItem)

Koleksiyonun belirtilen öğeyi içerip içermediğini belirler.Determines whether the collection contains the specified item.

CopyTo(Array, Int32)

ListItemCollectionBelirtilen dizinden başlayarak öğeleri içinden belirtilen öğesine kopyalar Array .Copies the items from the ListItemCollection to the specified Array, starting with the specified index.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.Determines whether the specified object is equal to the current object.

(Devralındığı yer: Object)
FindByText(String)

Koleksiyonu, ListItem Text belirtilen metne eşit olan bir özellik ile arar.Searches the collection for a ListItem with a Text property that equals the specified text.

FindByValue(String)

Koleksiyonu, ListItem Value belirtilen değeri içeren bir özellik ile arar.Searches the collection for a ListItem with a Value property that contains the specified value.

GetEnumerator()

IEnumeratorİçindeki tüm nesneleri içeren uygulanan bir nesne döndürür ListItem ListItemCollection .Returns a IEnumerator implemented object that contains all ListItem objects in the ListItemCollection.

GetHashCode()

Varsayılan karma işlevi olarak işlev görür.Serves as the default hash function.

(Devralındığı yer: Object)
GetType()

TypeGeçerli örneği alır.Gets the Type of the current instance.

(Devralındığı yer: Object)
IndexOf(ListItem)

Koleksiyonda belirtilen konumunu temsil eden dizin değerini belirler ListItem .Determines the index value that represents the position of the specified ListItem in the collection.

Insert(Int32, ListItem)

Belirtilen ListItem dizin konumundaki koleksiyonda belirtilen öğesini ekler.Inserts the specified ListItem in the collection at the specified index location.

Insert(Int32, String)

ListItemBelirtilen dizin konumundaki koleksiyonda belirtilen dizeyi temsil eden bir ekler.Inserts a ListItem which represents the specified string in the collection at the specified index location.

MemberwiseClone()

Geçerli bir basit kopyasını oluşturur Object .Creates a shallow copy of the current Object.

(Devralındığı yer: Object)
Remove(ListItem)

Belirtilen koleksiyondan kaldırır ListItem .Removes the specified ListItem from the collection.

Remove(String)

ListItemKoleksiyondan belirtilen dize tarafından temsil edilen öğesini kaldırır.Removes the ListItem that's represented by the specified string from the collection.

RemoveAt(Int32)

ListItemBelirtilen dizindeki öğesini koleksiyondan kaldırır.Removes the ListItem at the specified index from the collection.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.Returns a string that represents the current object.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IList.Add(Object)

Bu üyenin açıklaması için bkz Add(Object) ..For a description of this member, see Add(Object).

IList.Contains(Object)

Bu üyenin açıklaması için bkz Contains(Object) ..For a description of this member, see Contains(Object).

IList.IndexOf(Object)

Bu üyenin açıklaması için bkz IndexOf(Object) ..For a description of this member, see IndexOf(Object).

IList.Insert(Int32, Object)

Bu üyenin açıklaması için bkz Insert(Int32, Object) ..For a description of this member, see Insert(Int32, Object).

IList.IsFixedSize

Bu üyenin açıklaması için bkz IsFixedSize ..For a description of this member, see IsFixedSize.

IList.Item[Int32]

Bu üyenin açıklaması için bkz Item[Int32] ..For a description of this member, see Item[Int32].

IList.Remove(Object)

Bu üyenin açıklaması için bkz Remove(Object) ..For a description of this member, see Remove(Object).

IStateManager.IsTrackingViewState

Bu üyenin açıklaması için bkz IsTrackingViewState ..For a description of this member, see IsTrackingViewState.

IStateManager.LoadViewState(Object)

Daha önce kaydedilen durumu yükler.Loads the previously saved state.

IStateManager.SaveViewState()

Durum değişikliklerini içeren nesneyi döndürür.Returns object containing state changes.

IStateManager.TrackViewState()

Değişikliklerin durumunu izlemeye başlar.Starts tracking state of changes.

Uzantı Metotları

Cast<TResult>(IEnumerable)

Öğesinin öğelerini IEnumerable belirtilen türe yayınlar.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Öğesinin öğelerini IEnumerable belirtilen bir türe göre filtreler.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Bir sorgunun paralelleştirilmesini mümkün hale getirme.Enables parallelization of a query.

AsQueryable(IEnumerable)

Bir IEnumerable öğesine dönüştürür IQueryable .Converts an IEnumerable to an IQueryable.

Şunlara uygulanır

Ayrıca bkz.