一、asp:Repeater
Repeater 控件用于顯示被綁定在該控件上的項(xiàng)目的重復(fù)列表。Repeater 控件可被綁定到數(shù)據(jù)庫表、XML 文件或者其他項(xiàng)目列表。
?
1.1-前臺頁面代碼
<asp:Repeater ID="ImageTypeListNew" runat="server" OnItemCommand="ImageTypeListNew_ItemCommand"> <HeaderTemplate> <table cellspacing="0" border="0" id="ctl00_contentHolder_ImageTypeList" class="table table-striped"> <tbody> <tr> <th>分類名稱</th> <th>圖片數(shù)</th> <th>排序</th> <th style="width: 20%;">操作</th> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td> <asp:HiddenField ID="hfItemIndex" runat="server" Value='<%#Container.ItemIndex %>' /> <asp:HiddenField ID="hfCategoryId" runat="server" Value='<%#Eval("CategoryId") %>' /> <Hi:HtmlDecodeTextBox ID="ImageTypeName" runat="server" Text='<%# Bind("CategoryName") %>' CssClass="forminput form-control" Visible='<%#Eval("CategoryId").ToString()!="0" %>' /> <asp:Label ID="ltlTypeName" runat="server" Text='<%# Bind("CategoryName") %>' Visible='<%#Eval("CategoryId").ToString()=="0" %>'></asp:Label> </td> <td> <%#Eval("VideoCounts") %> </td> <td> <asp:Label ID="Label1" runat="server" Text='<%# Bind("DisplaySequence") %>' Visible='<%#Eval("CategoryId").ToString()=="0" %>'></asp:Label> <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,'')" /> </td> <td><span class="submit_shanchu"> <Hi:ImageLinkButton runat="server" ID="lkbtnDelete" CommandName="Delete" IsShow="true" Text="刪除" Visible='<%#Eval("CategoryId").ToString()!="0" %>'/></span></td> </tr> </ItemTemplate> <FooterTemplate></tbody></table></FooterTemplate> </asp:Repeater>
?
?1.2-后臺頁面代碼(核心)
?代碼示例:
DataTable videoCategories = GalleryHelper.GetVideoCategories(0); DataRow row = videoCategories.NewRow(); //如果數(shù)據(jù)為空,設(shè)置第一行數(shù)據(jù) row["CategoryId"] = "0"; row["CategoryName"] = "默認(rèn)分類"; row["DisplaySequence"] = "0"; row["VideoCounts"] = "0"; videoCategories.Rows.InsertAt(row, 0); this.ImageTypeListNew.DataSource = videoCategories; this.ImageTypeListNew.DataBind();
?
1.3-使用方法
在頁面加載時【Page_Load】可調(diào)用,以及刪除/排序/編輯等場景也可調(diào)用。
?
二、UI:Grid/GridView
?顯示表格數(shù)據(jù)是軟件開發(fā)中的一個周期性任務(wù)。ASP.NET 提供了許多工具來在網(wǎng)格中顯示表格數(shù)據(jù),例如 GridView 控件。通過使用 GridView 控件,您可以顯示、編輯和刪除多種不同的數(shù)據(jù)源(例如數(shù)據(jù)庫、XML 文件和公開數(shù)據(jù)的業(yè)務(wù)對象)中的數(shù)據(jù)。
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> <asp:TemplateField HeaderText="操作" HeaderStyle-CssClass="td_left td_right_fff"> <ItemTemplate> <div class="operation"> <span><a href="javascript:ShowRemoveProduct(<%#Eval("CategoryId") %>)">轉(zhuǎn)移商品</a></span> <span><span><a href="javascript:void(0);" onclick="javascript:CollectionCategory('<%# "EditReleteCategory.aspx?ParentCategoryId="+Eval("ParentCategoryId") + "&CategoryId="+Eval("CategoryId")%>')">相關(guān)課程</a></span></span> <span> <asp:HyperLink ID="lkEdit" runat="server" Text="編輯" NavigateUrl='<%# "EditActivityCategory.aspx?CategoryId="+Eval("CategoryId")%>'></asp:HyperLink> </span> </div> </ItemTemplate> </asp:TemplateField> </Columns> </UI:Grid>
?
?1.2-后臺頁面代碼(核心)
?
?代碼示例:
DataTable dt = new DataTable(); if (inviteCodeList.TotalRecords == 0) { dt.Columns.Add("SaleId"); dt.Columns.Add("UserId"); dt.Columns.Add("TransactionDate"); dt.Columns.Add("IncomeType"); dt.Columns.Add("TransactionNo"); dt.Columns.Add("TransactionType"); dt.Columns.Add("RefundId"); dt.Columns.Add("SaleName"); dt.Columns.Add("UserName"); dt.Columns.Add("OrderType"); dt.Columns.Add("PaymentType"); dt.Columns.Add("DeliverPrincipal"); dt.Columns.Add("CommissionRate"); dt.Columns.Add("Tax"); dt.Columns.Add("DeliverIncome"); dt.Columns.Add("ApprovedStatus"); dt.Columns.Add("Reason"); dt.Columns.Add("SettlementId"); dt.Columns.Add("Amount"); dt.Columns.Add("ApprovedStatusId"); if (dt.Rows.Count == 0) { dt.Rows.Add(dt.NewRow()); } this.grdSaleInviteCode.DataSource = dt; this.grdSaleInviteCode.DataBind(); }
?文章來源:http://www.zghlxwxcb.cn/news/detail-618993.html
原文鏈接:https://www.cnblogs.com/kimiliucn/p/17589737.html文章來源地址http://www.zghlxwxcb.cn/news/detail-618993.html
到了這里,關(guān)于ASP.NET WebForm中asp:Repeater和UI:Grid數(shù)據(jù)為空時如何顯示表頭?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!