62,243
社区成员




种类表Category
字段:ID int primary key identity(1,1) not null,--主键
CategoryName Nvarchar(200),--种类名称
内容表Category_sub
字段:subID int primary key identity(1,1) not null,--主键
sbuContent Nvarchar(200),--内容
ID int foreign key references Category(ID)--外键
select * from Category_sub where ID(Category_sub的外键ID)=@ID(Category的主键)
<asp:TreeView ID="TreeView1" runat="server" ExpandDepth="0">
</asp:TreeView>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) {
BindTree();
}
}
protected void BindTree()
{
DataConn dataconn = new DataConn();
var querysql = from c in dataconn.Category
select c;
foreach (var cust in querysql)
{
//将分类绑定到TreeView父节点中
TreeNode node = new TreeNode();
node.Text = cust.Name;
node.Value = cust.CategoryId.ToString();
node.NavigateUrl = "~/ProcShow.aspx?CategoryId=" + cust.CategoryId.ToString();
TreeView1.Nodes.Add(node);
BindTreeChild(node, cust.CategoryId);
}
}
protected void BindTreeChild(TreeNode tn, int categoryid)
{
//将指定分类下的所有产品绑定到该分类节点下
DataConn dataconn = new DataConn();
var querysql = from c in dataconn.Product
where c.Category.CategoryId == categoryid
select c;
foreach (var cust in querysql)
{
TreeNode Cnode = new TreeNode();
Cnode.Text = cust.Name;
Cnode.Value = cust.ProductId.ToString();
Cnode.NavigateUrl = "~/ProcShow.aspx?ProductId=" + cust.ProductId.ToString();
tn.ChildNodes.Add(Cnode);
}
}
<ul class="menu" runat="server" id="Menu">
<li><a href="#">种类1</a>
<ul>
<li><a href="#">种类1的子类</a></li>
</ul>
</li>
</ul>
Menu.InnerHtml = @"<li><a href='#'>Category 1</a><ul>li><a href='#'>Sub category 1a</a></li></ul></li>";