Repeater.DataMember 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 o establece la tabla específica de DataSource para enlazarla al control.
public:
virtual property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public virtual string DataMember { get; set; }
member this.DataMember : string with get, set
Public Overridable Property DataMember As String
Valor de propiedad
Cadena que especifica una tabla de DataSource.
Ejemplos
En el ejemplo siguiente se muestra cómo usar la DataMember propiedad para especificar una tabla en el DataSource objeto que se va a enlazar al Repeater control .
<%@ 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" >
<head>
<title>Repeater Example</title>
<script language="C#" runat="server">
void Page_Load(Object Sender, EventArgs e) {
if (!IsPostBack) {
DataTable dt1 = new DataTable("Dt1");
DataRow dr;
dt1.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt1.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt1.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
DataSet ds= new DataSet("ds1");
ds.Tables.Add(dt1);
for (int i = 0; i < 9; i++) {
dr = dt1.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i+1);
dt1.Rows.Add(dr);
}
DataTable dt2 = new DataTable("Dt2");
dt2.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt2.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt2.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
ds.Tables.Add(dt2);
for (int i = 0; i < 9; i++) {
dr = dt2.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 4.56 * (i+1);
dt2.Rows.Add(dr);
}
Repeater1.DataSource = ds;
Repeater1.DataMember = "Dt1";
Repeater1.DataBind();
}
}
</script>
</head>
<body>
<h3>Repeater Example</h3>
<form id="form1" runat="server">
<b>Repeater1:</b>
<br />
<asp:Repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "CurrencyValue") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</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" >
<head>
<title>Repeater Example</title>
<script language="VB" runat="server">
Sub Page_Load(Sender As Object, e As EventArgs)
If Not IsPostBack Then
Dim dt1 As New DataTable("Dt1")
Dim dr As DataRow
dt1.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt1.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt1.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim ds As New DataSet("ds1")
ds.Tables.Add(dt1)
Dim i As Integer
For i = 0 To 8
dr = dt1.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = 1.23 *(i + 1)
dt1.Rows.Add(dr)
Next i
Dim dt2 As New DataTable("Dt2")
dt2.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt2.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt2.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
ds.Tables.Add(dt2)
For i = 0 To 8
dr = dt2.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = 4.56 *(i + 1)
dt2.Rows.Add(dr)
Next i
Repeater1.DataSource = ds
Repeater1.DataMember = "Dt1"
Repeater1.DataBind()
End If
End Sub
</script>
</head>
<body>
<h3>Repeater Example</h3>
<form id="form1" runat="server">
<b>Repeater1:</b>
<br />
<asp:Repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "CurrencyValue") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</form>
</body>
</html>
Comentarios
Si el origen de datos especificado por la DataSource propiedad contiene varios orígenes de datos, utilice la DataMember propiedad para especificar el origen específico que se va a enlazar al control. Por ejemplo, si tiene una System.Data.DataSet clase con varias tablas, debe especificar qué tabla se va a enlazar al control. Después de especificar el origen de datos, use el DataBind método para enlazar el origen de datos al control .
El valor de esta propiedad se almacena en estado de vista.