ASP.Net/Data Binding/Repeater

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

ASP:Repeater Data binding

   <source lang="csharp">

<%@ Page Language=VB Debug=true %> <%@ Import Namespace="System.Data" %> <script runat=server> Private MyDT As New DataTable Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)

   Dim MyRow As DataRow
   MyDT.Columns.Add(New DataColumn("EmployeeID", _
       GetType(Int32)))
   MyDT.Columns.Add(New DataColumn("EmployeeFirstName", _
       GetType(String)))
   MyDT.Columns.Add(New DataColumn("EmployeeLastName", _
       GetType(String)))
   MyDT.Columns.Add(New DataColumn("BirthDate", _
       GetType(Date)))
   MyDT.Columns.Add(New DataColumn("Salary", _
       GetType(Single)))
   MyRow = MyDT.NewRow()
   MyRow(0) = 1
   MyRow(1) = "Bob"
   MyRow(2) = "Miller"
   MyRow(3) = "5/15/65"
   MyRow(4) = "40000"
   MyDT.Rows.Add(MyRow)
   MyRow = MyDT.NewRow()
   MyRow(0) = 2
   MyRow(1) = "Jenny"
   MyRow(2) = "Fry"
   MyRow(3) = "7/22/75"
   MyRow(4) = "73050"
   MyDT.Rows.Add(MyRow)
   MyRow = MyDT.NewRow()
   MyRow(0) = 3
   MyRow(1) = "Lisa"
   MyRow(2) = "Smith"
   MyRow(3) = "12/8/71"
   MyRow(4) = "62500"
   MyDT.Rows.Add(MyRow)
   MyRow = MyDT.NewRow()
   MyRow(0) = 4
   MyRow(1) = "Stephanie"
   MyRow(2) = "Myer"
   MyRow(3) = "3/15/54"
   MyRow(4) = "43222"
   MyDT.Rows.Add(MyRow)
   MyRow = MyDT.NewRow()
   MyRow(0) = 5
   MyRow(1) = "Jimmy"
   MyRow(2) = "Parker"
   MyRow(3) = "3/12/47"
   MyRow(4) = "52825"
   MyDT.Rows.Add(MyRow)
   rpt1.DataSource = MyDT
   rpt1.DataBind()

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>Repeater Control Sample Page</TITLE> </HEAD> <BODY > <form runat="server"> <ASP:Repeater

   id="rpt1"
   runat="server"
   >
   <HeaderTemplate>
</HeaderTemplate> <ItemTemplate> </ItemTemplate> <AlternatingItemTemplate> </AlternatingItemTemplate> <SeparatorTemplate> </SeparatorTemplate> <FooterTemplate>
Employee ID First Name Last Name Birth Date Salary
           <%# DataBinder.Eval(Container.DataItem, "EmployeeID") %>
           <%# DataBinder.Eval(Container.DataItem, "EmployeeFirstName") %>
           <%# DataBinder.Eval(Container.DataItem, "EmployeeLastName") %>
           <%# Format(DataBinder.Eval(Container.DataItem, "BirthDate"), "Short Date") %>
           <%# FormatCurrency(DataBinder.Eval(Container.DataItem, "Salary")) %>
           <%# DataBinder.Eval(Container.DataItem, "EmployeeID") %>
           <%# DataBinder.Eval(Container.DataItem, "EmployeeFirstName") %>
           <%# DataBinder.Eval(Container.DataItem, "EmployeeLastName") %>
           <%# Format(DataBinder.Eval(Container.DataItem, "BirthDate"), "Short Date") %>
           <%# FormatCurrency(DataBinder.Eval(Container.DataItem, "Salary")) %>
&nbsp &nbsp &nbsp &nbsp &nbsp
Employee ID First Name Last Name Birth Date Salary
   </FooterTemplate>

</ASP:Repeater>

</Form> </BODY> </HTML>

      </source>
   
  


Bind data to asp:repeater

   <source lang="csharp">

<%@ Page Language="vb" %> <%@ Import Namespace="System.Data" %> <html> <head>

  <title>Databound Control Example</title>
  <script runat="server">
     Sub Page_Load()
        MyDataGrid.DataSource = CreateData()
        MyDataGrid.DataBind()
        MyDataList.DataSource = CreateData()
        MyDataList.DataBind()
        MyRepeater.DataSource = CreateData()
        MyRepeater.DataBind()
     End Sub
     Function CreateData() As DataTable
        Dim DT As New DataTable()
        Dim Row1, Row2, Row3, Row4 As DataRow
        DT.Columns.Add(New DataColumn("name", System.Type.GetType("System.String")))
        DT.Columns.Add(New DataColumn("city", System.Type.GetType("System.String")))
        Row1 = DT.NewRow()
        Row1("name") = "Name 1"
        Row1("city") = "City 1"
        DT.Rows.Add(Row1)
        Row2 = DT.NewRow()
        Row2("name") = "Name 2"
        Row2("city") = "City 2"
        DT.Rows.Add(Row2)
        Row3 = DT.NewRow()
        Row3("name") = "Name 3"
        Row3("city") = "City 3"
        DT.Rows.Add(Row3)
        Row4 = DT.NewRow()
        Row4("name") = "Name 4"
        Row4("city") = "City 4"
        DT.Rows.Add(Row4)
        Return DT
     End Function
  </script>

</head> <body>

Databound Control Example

  <form runat="server">
     <asp:table id="MyTable" border="1" cellpadding="5" cellspacing="0" runat="server">
        <asp:tablerow runat="server">
           <asp:tablecell runat="server">
              DataGrid Control:
           </asp:tablecell>
           <asp:tablecell runat="server">
              <asp:datagrid id="MyDataGrid"
                 allowpaging="true"
                 allowsorting="true"
                 alternatingitemstyle-backcolor="LightSkyBlue"
                 backcolor="Blue"
                 forecolor="White"
                 cellpadding="2"
                 cellspacing="0"
                 headerstyle-backcolor="DarkBlue"
                 headerstyle-forecolor="Yellow"
                 pagerstyle-mode="NumericPages"
                 pagesize="5"
                 runat="server"/>
           </asp:tablecell>
        </asp:tablerow>
        <asp:tablerow runat="server">
           <asp:tablecell runat="server">
              DataList Control:
           </asp:tablecell>
           <asp:tablecell runat="server">
              <asp:datalist id="MyDataList"
                 alternatingitemstyle-backcolor="LightSkyBlue"
                 backcolor="Blue"
                 bordercolor="Black"
                 cellpadding="2"
                 cellspacing="0"
                 forecolor="White"
                 headerstyle-backcolor="DarkBlue"
                 headerstyle-forecolor="Yellow"
                 repeatcolumns="1"
                 repeatdirection="vertical"
                 repeatlayout="table" 
                 runat="server">
                 <headertemplate>
                    Composers
                 </headertemplate>
                 <itemtemplate>
                    <%# databinder.eval(container.dataitem, "name") %>
                 </itemtemplate>
              </asp:datalist>
           </asp:tablecell>
        </asp:tablerow>
        <asp:tablerow runat="server">
           <asp:tablecell runat="server">
              Repeater Control:
           </asp:tablecell>
           <asp:tablecell runat="server">
              <asp:repeater id="MyRepeater" runat="server">
                 <headertemplate>
</headertemplate> <itemtemplate> </itemtemplate> <footertemplate>
Name
City
<%# DataBinder.Eval(Container.DataItem, _ "name") %> <%# DataBinder.Eval(Container.DataItem, _ "city") %>
                 </footertemplate>
              </asp:repeater>
           </asp:tablecell>
        </asp:tablerow>
     </asp:table>
  </form>

</body> </html>

      </source>