Repeater.DataMember Proprietà

Definizione

Ottiene o imposta la tabella specifica nella proprietà DataSource da associare al controllo.

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

Valore della proprietà

String

Stringa che specifica una tabella nella proprietà DataSource.

Esempio

Nell'esempio seguente viene illustrato come usare la DataMember proprietà per specificare una tabella nell'oggetto DataSource da associare al Repeater controllo.

<%@ 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>

Commenti

Se l'origine dati specificata dalla DataSource proprietà contiene più origini di dati, utilizzare la DataMember proprietà per specificare l'origine specifica da associare al controllo. Ad esempio, se si dispone System.Data.DataSet di più tabelle, è necessario specificare quale tabella associare al controllo. Dopo aver specificato l'origine dati, usare il DataBind metodo per associare l'origine dati al controllo.

Il valore di questa proprietà viene archiviato nello stato di visualizzazione.

Si applica a

Vedi anche