Repeater.DataMember Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define a tabela específica no DataSource para associar ao controle.
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 da propriedade
Uma cadeia de caracteres que especifica uma tabela no DataSource.
Exemplos
O exemplo a seguir demonstra como usar a DataMember propriedade para especificar uma tabela na associação DataSource ao Repeater controle.
<%@ 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>
Comentários
Se a fonte de dados especificada pela DataSource propriedade contiver várias fontes de dados, use a DataMember propriedade para especificar a fonte específica a ser associada ao controle. Por exemplo, se você tiver um System.Data.DataSet com várias tabelas, deverá especificar qual tabela associar ao controle. Depois de especificar a fonte de dados, use o DataBind método para associar a fonte de dados ao controle.
O valor dessa propriedade é armazenado no estado de exibição.