DataList.Items Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene una colección de objetos DataListItem que representan los elementos individuales dentro del control.
public:
virtual property System::Web::UI::WebControls::DataListItemCollection ^ Items { System::Web::UI::WebControls::DataListItemCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual System.Web.UI.WebControls.DataListItemCollection Items { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Items : System.Web.UI.WebControls.DataListItemCollection
Public Overridable ReadOnly Property Items As DataListItemCollection
Valor de propiedad
Objeto DataListItemCollection que contiene una colección de objetos DataListItem que representan los elementos individuales dentro del control DataList.
- Atributos
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la Items colección para mostrar los elementos en el DataList control .
Nota
En el ejemplo de código siguiente se usa el modelo de código de un solo archivo y es posible que no funcione correctamente si se copia directamente en un archivo de código subyacente. Este ejemplo de código debe copiarse en un archivo de texto vacío que tenga una extensión .aspx. Para obtener más información sobre el modelo de código de formularios Web Forms, vea ASP.NET modelo de código de página de formularios web Forms.
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language = "C#" runat="server">
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
for (int i = 0; i < 10; i++)
{
dr = dt.NewRow();
dr[0] = "Item " + i.ToString();
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
{
DataList1.DataSource = CreateDataSource();
DataList1.DataBind();
}
}
void Button_Click(Object sender, EventArgs e)
{
if (DataList1.Items.Count > 0)
{
Label1.Text = "The Items collection contains: <br />";
foreach(DataListItem item in DataList1.Items)
{
Label1.Text += ((DataBoundLiteralControl)item.Controls[0]).Text +
"<br />";
}
}
}
</script>
<head runat="server">
<title>DataList Items Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataList Items Example</h3>
<asp:DataList id="DataList1" runat="server"
BorderColor="black"
CellPadding="3"
Font-Names="Verdana"
Font-Size="8pt">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<AlternatingItemStyle BackColor="Gainsboro">
</AlternatingItemStyle>
<HeaderTemplate>
Items
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</ItemTemplate>
</asp:DataList>
<br /><br />
<asp:Button id="Button1"
Text="Display Contents of Items Collection"
OnClick="Button_Click"
runat="server"/>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
</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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language = "VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
Dim i As Integer
For i = 0 To 9
dr = dt.NewRow()
dr(0) = "Item " & i.ToString()
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
DataList1.DataSource = CreateDataSource()
DataList1.DataBind()
End If
End Sub 'Page_Load
Sub Button_Click(sender As Object, e As EventArgs)
If DataList1.Items.Count > 0 Then
Label1.Text = "The Items collection contains: <br />"
Dim item As DataListItem
For Each item In DataList1.Items
Label1.Text += CType(item.Controls(0), DataBoundLiteralControl).Text & "<br />"
Next item
End If
End Sub 'Button_Click
</script>
<head runat="server">
<title>DataList Items Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataList Items Example</h3>
<asp:DataList id="DataList1" runat="server"
BorderColor="black"
CellPadding="3"
Font-Names="Verdana"
Font-Size="8pt">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<AlternatingItemStyle BackColor="Gainsboro">
</AlternatingItemStyle>
<HeaderTemplate>
Items
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</ItemTemplate>
</asp:DataList>
<br /><br />
<asp:Button id="Button1"
Text="Display Contents of Items Collection"
OnClick="Button_Click"
runat="server"/>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
</form>
</body>
</html>
Comentarios
Use la Items colección para controlar mediante programación los elementos del DataList control . La Items colección no proporciona ningún método para agregar o quitar elementos a la colección. Sin embargo, puede controlar el contenido de un elemento proporcionando un controlador para el ItemCreated evento.
Nota
Solo los elementos enlazados al origen de datos están contenidos en la Items colección. El encabezado, el pie de página y el separador no se incluyen en la colección.