一,数据库:
构建好你的菜单表.
二.前台:
只要一个TreeView控件,加上 TreeView1_SelectedNodeChanged 事件.
三.后台:
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
for (int i = 0; i < this.TreeView1.Nodes.Count; i++)
{//跌迭根节点
if (this.TreeView1 .SelectedValue==this.TreeView1 .Nodes [i].Value )
{//如果选中的是根节点,就展开
this.TreeView1.SelectedNode.Expanded = true;
}
else
{如果选中的不是根节点
for (int j = 0; j < this.TreeView1.SelectedNode.Parent.ChildNodes.Count; j++)
{//就让选中节点的所有同级节点收缩
this.TreeView1.SelectedNode.Parent.ChildNodes[j].CollapseAll();
}
//然后再展开选中的节点及其所有父节点
this.TreeView1.SelectedNode.Parent.Expanded = true;
this.TreeView1.SelectedNode.Expanded = true;
}
}
}//end TreeView1_SelectedNodeChanged
构建好你的菜单表.
二.前台:
只要一个TreeView控件,加上 TreeView1_SelectedNodeChanged 事件.
三.后台:
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
for (int i = 0; i < this.TreeView1.Nodes.Count; i++)
{//跌迭根节点
if (this.TreeView1 .SelectedValue==this.TreeView1 .Nodes [i].Value )
{//如果选中的是根节点,就展开
this.TreeView1.SelectedNode.Expanded = true;
}
else
{如果选中的不是根节点
for (int j = 0; j < this.TreeView1.SelectedNode.Parent.ChildNodes.Count; j++)
{//就让选中节点的所有同级节点收缩
this.TreeView1.SelectedNode.Parent.ChildNodes[j].CollapseAll();
}
//然后再展开选中的节点及其所有父节点
this.TreeView1.SelectedNode.Parent.Expanded = true;
this.TreeView1.SelectedNode.Expanded = true;
}
}
}//end TreeView1_SelectedNodeChanged
本文介绍了一个基于TreeView控件实现的导航菜单系统。该系统通过在前端使用TreeView控件展示菜单,并在后台通过TreeView1_SelectedNodeChanged事件处理节点选择变化。当用户选择不同级别的节点时,系统会自动调整当前节点及其子节点的状态。

361

被折叠的 条评论
为什么被折叠?



