Asp.net中DataList及Repeat使用(7)

以上是对GridView,DataList及Repeater使用的一些建议。
1. DataList使用。
DataList的一些总结:


还有一些重要属性如:

DataList事件如:

以下案例:

前台代码块:
<asp:DataList ID="dlBooks" runat="server"> <ItemTemplate> <table id="tbBooks" class="list_area"> <tr> <td rowspan="2" class="td_left"> <a href="BookDetail.aspx?bid=<%# Eval("Id")%>"> <img alt="" src="<%# GetUrl(Eval("ISBN").ToString()) %>" /> </a> </td> <td class="td_right"> <a href="BookDetail.aspx?bid=<%# Eval("Id")%>" name="link_prd_name" target="_blank" class="b_title" id="link_prd_name"> <%# Eval("Title") %></a> </td> </tr> <tr> <td align="left"> <span> <%# Eval("Author") %></span><br /> <span> <%# Eval("PublishDate","{0:D}") %></span><br /> <span> <%# StringUtility.CutString(Eval("ContentDescription"), 150)%></span> </td> </tr> <tr> <td align="right" colspan="2"> 价格: <span class="red"> <%# Eval("UnitPrice","{0:C}")%></span> </td> </tr> </table> </ItemTemplate> <SeparatorTemplate> </SeparatorTemplate> </asp:DataList>
后台代码块:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //首次加载,赋初值 ViewState["PageIndex"] = 1; //默认为第一页 if (Request.QueryString["typeid"] != null) ViewState["CategoryId"] = Convert.ToInt32(Request.QueryString["typeid"]); else ViewState["CategoryId"] = 1;//默认C#类别 //更换类别时,需要重新计算页码 AnpBook.RecordCount = bookManager.GetBookCountByCategory(Convert.ToInt32(ViewState["CategoryId"])); } DataBind(); } private void DataBind() { List<Book> list = bookManager.GetBooks((int)ViewState["CategoryId"], ViewState["OrderField"].ToString(), ViewState["Order"].ToString(), 5, (int)ViewState["PageIndex"]); if (list.Count == 0) Response.Redirect("~/Default.aspx"); this.dlBooks.DataSource = list; this.dlBooks.DataBind(); } protected void AnpBook_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e) { ViewState["PageIndex"] = e.NewPageIndex; DataBind(); } /// <summary> /// 获得封面的url /// </summary> /// <param name="isbn"></param> /// <returns></returns> public string GetUrl(string isbn) { return "Images/BookCovers/" + isbn.ToString() + ".jpg"; }
GridView,DataList和Repeater三个的比较


浙公网安备 33010602011771号