BaseDataList.DataMember Propriedade

Definição

Obtém ou define o membro de dados específico em uma fonte de dados de vários membros a ser associado a um controle de listagem de dados.

public:
 property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public string DataMember { get; set; }
[System.Web.UI.Themeable(false)]
public string DataMember { get; set; }
member this.DataMember : string with get, set
[<System.Web.UI.Themeable(false)>]
member this.DataMember : string with get, set
Public Property DataMember As String

Valor da propriedade

Um membro de dados de uma fonte de dados de vários membros. O valor padrão é Empty.

Atributos

Exemplos

O exemplo de código a seguir demonstra como usar a DataMember propriedade para especificar qual tabela em um DataSet objeto a ser associado a um DataGrid 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 runat="server">
    <title> BaseDataList DataMember Example </title>
<script runat="server">

      // Create sample data for the DataGrid control with two tables, 
      // Employee and Customer.
      DataSet CreateDataSet()
      {
    
         // Create a table to store employee values.
         DataTable EmployeeTable = new DataTable("Employee");
         DataRow TempDataRow;
   
         // Define the columns for the Employee table.
         EmployeeTable.Columns.Add(
            new DataColumn("EmployeeName", typeof(string)));
         EmployeeTable.Columns.Add(
            new DataColumn("EmployeeID", typeof(int)));

         // Populate the Employee table.
         for (int i=1; i<=5; i++) 
         {
            TempDataRow = EmployeeTable.NewRow();
            TempDataRow[0] = "Employee " + i.ToString();
            TempDataRow[1] = (i+1700);

            EmployeeTable.Rows.Add(TempDataRow);
         }

         // Create a table to store customer values.
         DataTable CustomerTable = new DataTable("Customer");

         // Define the columns for the Customer table.
         CustomerTable.Columns.Add(
            new DataColumn("CustomerName", typeof(string)));
         CustomerTable.Columns.Add(
            new DataColumn("CustomerID", typeof(int)));

         // Populate the Customer table.
         for (int i=1; i<=5; i++) 
         {
            TempDataRow = CustomerTable.NewRow();
            TempDataRow[0] = "Customer " + i.ToString();
            TempDataRow[1] = (i+1700);

            CustomerTable.Rows.Add(TempDataRow);
         }

         // Create a DataSet and add the Employee and Customer tables.
         DataSet ds = new DataSet();
         ds.Tables.Add(EmployeeTable);
         ds.Tables.Add(CustomerTable);

         return ds;

      }
             
      void Page_Load(Object sender, EventArgs e) 
      {

         // The data source only needs to be bound to the DataList  
         // control the first time the page is accessed.    
         if(!IsPostBack)
         {

            // Create the sample data for the DataList control.
            ItemsGrid.DataSource = CreateDataSet();

            // The data source in this example contains multiple tables. 
            // Specify which table to display in the DataList control. 
            ItemsGrid.DataMember = "Customer";

            // Bind the data source to the control.
            ItemsGrid.DataBind();

         }

      }

      void Index_Change(Object sender, EventArgs e) 
      {

         // Create the sample data for the DataList control.
         ItemsGrid.DataSource = CreateDataSet();

         // The data source in this example contains multiple tables. 
         // Specify which table to display in the DataList control 
         // based on the user's selection from the DropDownList control. 
         ItemsGrid.DataMember = SourceList.SelectedItem.Text;

         // Bind the data source to the control. 
         ItemsGrid.DataBind();

      }

   </script>

</head>
<body>

   <form id="form1" runat="server">

      <h3> BaseDataList DataMember Example </h3>
      
      <asp:DataGrid id="ItemsGrid"
           AutoGenerateColumns="True" 
           runat="server">

         <headerstyle backcolor="#00aaaa"/>
</asp:DataGrid>

      <br /><br />

      Select the data source: <br />

      <asp:DropDownList id="SourceList"
           AutoPostBack="True"
           OnSelectedIndexChanged="Index_Change"
           runat="server">

         <asp:Listitem Selected="True">Customer</asp:Listitem>
         <asp:Listitem>Employee</asp:Listitem>

      </asp:DropDownList>

   </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 runat="server">
    <title> BaseDataList DataMember Example </title>
<script runat="server">

      ' Create sample data for the DataGrid control with two tables,
      ' Employee and Customer.
      Function CreateDataSet() As DataSet
    
         ' Create a table to store employee values.
         Dim EmployeeTable As DataTable = New DataTable("Employee")
         Dim TempDataRow As DataRow
   
         ' Define the columns for the Employee table.
         EmployeeTable.Columns.Add( _
            New DataColumn("EmployeeName", GetType(String)))
         EmployeeTable.Columns.Add( _
            New DataColumn("EmployeeID", GetType(Integer)))

         ' Populate the Employee table.
         Dim i As Integer

         For i=1 To 5 
         
            TempDataRow = EmployeeTable.NewRow()
            TempDataRow(0) = "Employee " & i.ToString()
            TempDataRow(1) = (i+1700)

            EmployeeTable.Rows.Add(TempDataRow)

         Next

         ' Create a table to store customer values.
         Dim CustomerTable As DataTable = New DataTable("Customer")

         ' Define the columns for the Customer table.
         CustomerTable.Columns.Add( _
            New DataColumn("CustomerName", GetType(String)))
         CustomerTable.Columns.Add( _
            New DataColumn("CustomerID", GetType(Integer)))

         ' Populate the Customer table.
         For i=1 To 5  

            TempDataRow = CustomerTable.NewRow()
            TempDataRow(0) = "Customer " & i.ToString()
            TempDataRow(1) = (i+1700)

            CustomerTable.Rows.Add(TempDataRow)
         
         Next

         ' Create a DataSet and add the Employee and Customer tables.
         Dim ds As DataSet = New DataSet()
         ds.Tables.Add(EmployeeTable)
         ds.Tables.Add(CustomerTable)

         Return ds

      End Function
             
      Sub Page_Load(sender As Object, e As EventArgs) 

         ' The data source only needs to be bound to the DataList  
         ' control the first time the page is accessed.    
         If Not IsPostBack Then

            ' Create the sample data for the DataList control.
            ItemsGrid.DataSource = CreateDataSet()

            ' The data source in this example contains multiple tables.  
            ' Specify which table to display in the DataList control. 
            ItemsGrid.DataMember = "Customer"

            ' Bind the data source to the control.
            ItemsGrid.DataBind()

         End If

      End Sub

      Sub Index_Change(sender As Object, e As EventArgs) 

         ' Create the sample data for the DataList control.
         ItemsGrid.DataSource = CreateDataSet()

         ' The data source in this example contains multiple tables. 
         ' Specify which table to display in the DataList control 
         ' based on the user's selection from the DropDownList control. 
         ItemsGrid.DataMember = SourceList.SelectedItem.Text

         ' Bind the data source to the control. 
         ItemsGrid.DataBind()

      End Sub

   </script>

</head>
<body>

   <form id="form1" runat="server">

      <h3> BaseDataList DataMember Example </h3>
      
      <asp:DataGrid id="ItemsGrid"
           AutoGenerateColumns="True" 
           runat="server">

         <headerstyle backcolor="#00aaaa"/>
</asp:DataGrid>

      <br /><br />

      Select the data source: <br />

      <asp:DropDownList id="SourceList"
           AutoPostBack="True"
           OnSelectedIndexChanged="Index_Change"
           runat="server">

         <asp:Listitem Selected="True">Customer</asp:Listitem>
         <asp:Listitem>Employee</asp:Listitem>

      </asp:DropDownList>

   </form>
 
</body>

</html>

Comentários

Use a DataMember propriedade para especificar um membro de uma fonte de dados multimember para associar ao controle de lista. Por exemplo, se você tiver uma fonte de dados com mais de uma tabela especificada na DataSource propriedade , use a DataMember propriedade para especificar qual tabela associar a um controle de listagem de dados.

Essa propriedade não pode ser definida por temas ou temas de folha de estilos. Para obter mais informações, consulte ThemeableAttribute e ASP.NET Temas e Peles.

Aplica-se a

Confira também