一、asp:Repeater
Repeater 控件用于显示被绑定在该控件上的项目的重复列表。Repeater 控件可被绑定到数据库表、XML 文件或者其他项目列表。
1.1-前台页面代码
1 <asp:Repeater ID="ImageTypeListNew" runat="server" OnItemCommand="ImageTypeListNew_ItemCommand"> 2 <HeaderTemplate> 3 <table cellspacing="0" border="0" id="ctl00_contentHolder_ImageTypeList"> 4 <tbody> 5 <tr> 6 <th>名称</th> 7 <th>数量</th> 8 <th>排序</th> 10 </tr> 11 </HeaderTemplate> 12 <ItemTemplate> 13 <tr> 14 <td> 15 <asp:HiddenField ID="hfItemIndex" runat="server" Value='<%#Container.ItemIndex %>' /> 16 <asp:HiddenField ID="hfCategoryId" runat="server" Value='<%#Eval("CategoryId") %>' /> 17 <Hi:HtmlDecodeTextBox ID="ImageTypeName" runat="server" Text='<%# Bind("CategoryName") %>' CssClass="forminput form-control" Visible='<%#Eval("CategoryId").ToString()!="0" %>' /> 18 <asp:Label ID="ltlTypeName" runat="server" Text='<%# Bind("CategoryName") %>' Visible='<%#Eval("CategoryId").ToString()=="0" %>'></asp:Label> 19 </td> 20 <td> 21 <%#Eval("VideoCounts") %> 22 </td> 23 <td> 24 <asp:Label ID="Label1" runat="server" Text='<%# Bind("DisplaySequence") %>' Visible='<%#Eval("CategoryId").ToString()=="0" %>'></asp:Label> 25 <asp:TextBox ID="txtDisplaySequence" runat="server" Button="btnSearchButton" CssClass="forminput form-control" value='<%# Eval("DisplaySequence") %>' Visible='<%#Eval("CategoryId").ToString()!="0" %>' onkeyup="this.value=this.value.replace(/\D/g,'')" style="width: 60px;" onafterpaste="this.value=this.value.replace(/\D/g,'')" /> 26 </td> 29 </tr> 30 </ItemTemplate> 31 <FooterTemplate></tbody></table></FooterTemplate> 32 </asp:Repeater>
1.2-后台页面代码(核心)
代码示例:
1 private void GetImageType() 2 { 3 DataTable videoCategories = GalleryHelper.GetVideoCategories(0); 4 5 //如果数据为空,设置第一行数据 6 DataRow row = videoCategories.NewRow(); 7 row["CategoryId"] = ""; 8 row["CategoryName"] = "默认分类"; 9 row["DisplaySequence"] = ""; 10 row["VideoCounts"] = ""; 11 videoCategories.Rows.InsertAt(row, 0); 12 13 this.ImageTypeListNew.DataSource = videoCategories; 14 this.ImageTypeListNew.DataBind(); 15 }
1.3-使用方法
在页面加载时【Page_Load】可调用,以及删除/排序/编辑等场景也可调用。
二、UI:Grid/GridView
显示表格数据是软件开发中的一个周期性任务。ASP.NET 提供了许多工具来在网格中显示表格数据,例如 GridView 控件。通过使用 GridView 控件,您可以显示、编辑和删除多种不同的数据源(例如数据库、XML 文件和公开数据的业务对象)中的数据。
1.1-前台页面代码
1 <UI:Grid ID="grdTopCategries" DataKeyNames="CategoryId" runat="server" ShowHeader="true" AutoGenerateColumns="false" CssClass="table table-striped" GridLines="None" Width="100%">
<Columns>
<asp:TemplateField HeaderText="分类名称">
<ItemTemplate>
<span class="icon" categoryid='<%# Eval("CategoryId") %>' parentid='<%# Eval("ParentCategoryId") %>' id="spShowImage" runat="server">
<img src="../images/jian.gif" width="24" height="24" /></span>
<span class="Name" id="spCategoryName"><a href='<%# "/product_detail/"+Eval("CategoryId")%>' target="_blank">
<asp:Literal ID="lblCategoryName" runat="server" /></a></span>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="URL重写名称" DataField="RewriteName" />
<asp:TemplateField HeaderText="排序">
<ItemTemplate>
<asp:TextBox ID="txtSequence" CssClass="form-control" runat="server" Text='<%# Eval("DisplaySequence") %>' Width="80px" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</UI:Grid>
1.2-后台页面代码(核心)
代码示例:
1 DataTable dt = new DataTable(); 2 if (inviteCodeList.TotalRecords == 0) 3 { 4 dt.Columns.Add("SaleId"); 5 dt.Columns.Add("UserId"); 6 dt.Columns.Add("TransactionDate"); 7 dt.Columns.Add("IncomeType"); 8 dt.Columns.Add("TransactionNo"); 9 dt.Columns.Add("TransactionType"); 10 dt.Columns.Add("RefundId"); 11 dt.Columns.Add("SaleName"); 12 dt.Columns.Add("UserName"); 13 dt.Columns.Add("OrderType"); 14 dt.Columns.Add("PaymentType"); 15 dt.Columns.Add("DeliverPrincipal"); 16 dt.Columns.Add("CommissionRate"); 17 dt.Columns.Add("Tax"); 18 dt.Columns.Add("DeliverIncome"); 19 dt.Columns.Add("ApprovedStatus"); 20 dt.Columns.Add("Reason"); 21 dt.Columns.Add("SettlementId"); 22 dt.Columns.Add("Amount"); 23 dt.Columns.Add("ApprovedStatusId"); 24 25 if (dt.Rows.Count == 0) 26 { 27 dt.Rows.Add(dt.NewRow()); 28 } 29 this.grdSaleInviteCode.DataSource = dt; 30 this.grdSaleInviteCode.DataBind(); 31 }
标签:控件,asp,Repeater,表头,Add,dt,Columns,row From: https://www.cnblogs.com/kimiliucn/p/17589737.html