ASP.NET Repeater + ItemTemplate 使用方法

 

   Default.aspx
 
   <div>
 
      <table border="0" cellpadding="0" cellspacing="0" width="850">
 
      <asp:SqlDataSource ID="SqlDataSource1" runat="server"
      ConnectionString="Data Source=.\SqlExpress; Initial Catalog=Soccer; Integrated Security=SSPI"
      SelectCommand="SELECT dbo.Team.Team_Name, dbo.League.League_Name FROM dbo.Team, dbo.League
      WHERE dbo.Team.League_ID = dbo.League.League_ID ORDER BY dbo.League.League_Name" />
 
      <asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
      <ItemTemplate>
         <asp:TableRow ID="tr1" runat="server">
            <asp:TableCell>
               <br />
               <b><u><asp:Label ID="Label2" runat="server" Text='<%# Eval("League_Name") %>' /></u></b>
            </asp:TableCell>
         </asp:TableRow>
 
         <tr><td>
            <asp:Label ID="Label1" runat="server" Text='<%# Eval("Team_Name") %>' />
         </td></tr>
      </ItemTemplate>
      </asp:Repeater>
 
      </table>
 
   </div>
 

 

   Default.aspx.vb
 
   Private cat As String
 
   Protected Sub R1_ItemCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) _
   Handles Repeater1.ItemDataBound
 
      Dim abc As Label = TryCast(e.Item.FindControl("Label2"), Label)
      Dim tr As TableRow = TryCast(e.Item.FindControl("tr1"), TableRow)
 
      If abc.Text = cat Then
         e.Item.Controls.Remove(tr)
      Else
         cat = abc.Text
      End If
 
   End Sub