使用repeater控件显示列表替代treeview
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.Sql; using System.Data.SqlClient; using System.Configuration; namespace Blog.Blog { public partial class repeatertest : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { showmenu(); } protected void showmenu() { SqlDataAdapter cmd = new SqlDataAdapter("select * from content;select * from content", new SqlConnection(ConfigurationManager.ConnectionStrings["testConnectionString"].ConnectionString)); DataSet ds = new DataSet(); cmd.Fill(ds); ds.Relations.Add(new DataRelation("stu",ds.Tables[0].Columns["_id"],ds.Tables[1].Columns["_parent_id"])); Repeater1.DataSource = ds; Repeater1.DataBind(); } protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e) { DataRowView dv = e.Item.DataItem as DataRowView; if (dv != null) { Repeater repSubMenu = e.Item.FindControl("ss") as Repeater; if (repSubMenu != null) { repSubMenu.DataSource = dv.CreateChildView("stu"); repSubMenu.DataBind(); } } } } }
前端显示
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="repeatertest.aspx.cs" Inherits="Blog.Blog.repeatertest" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:Repeater ID="Repeater1" runat="server" onitemdatabound="Repeater1_ItemDataBound"> <ItemTemplate> <a href="#"><%#DataBinder.Eval(Container.DataItem, "_id")%></a> <asp:Repeater runat="server" ID="ss"> <ItemTemplate> <div style="margin-left:15px;"><a href="#"><%#DataBinder.Eval(Container.DataItem, "_parent_id")%></a><br /></div> </ItemTemplate> </asp:Repeater> </ItemTemplate> </asp:Repeater> </div> </form> </body> </html>
作者:Hackerman
出处:http://www.cnblogs.com/Hackerman/
出处:http://www.cnblogs.com/Hackerman/
本文版权归作者和博客园共有,欢迎转载。但必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。