百分请教一个VS2005下Treeview绑定的问题
我用下面的代码读取分类表并绑定至页面中的TreeView,递归成功,但是显示的是所有的根分类及下面的子分类,而我只想显示id为 2,3,4,5,6这几个根目录及他们下面的所有子目录,子目录下还分为若干级子目录,请问如何实现 ,今天慕白兄给我讲解了半天,实在是没弄明白,只好再次发问,只要解决,立即结贴
(参考图片为:http://www.ssdj.gov.cn/1.jpg,比方说我只要取出“考试管理”和“成绩管理”这两个根节点及他们的所有子节点,要如何弄)
请给出完整代码,只说原理,俺看不懂,或者在下面的代码上直接修改更好,谢谢
protected void Page_Load(object sender, EventArgs e)
{
string Sql = "select * from limfunction order by parentID ";
DataSet ds = SqlHelper.ExecuteDataSet(SqlHelper.sqlstring,CommandType.Text,Sql,null);
this.ViewState[ "ds "] = ds;
if (!this.IsPostBack)
{
AddTree(0, (TreeNode)null, TreeView0);
}
}
public void AddTree(int ParentID, TreeNode pNode,TreeView treename)
{
DataSet ds = (DataSet)this.ViewState[ "ds "];
DataView dvTree = new DataView(ds.Tables[0]);
//过滤ParentID,得到当前的所有子节点
dvTree.RowFilter = "[PARENTID] = " + ParentID;
foreach (DataRowView Row in dvTree)
{
TreeNode Node = new TreeNode();
if (pNode == null)
{ //添加根节点
Node.Text = Row[ "cname "].ToString();
Node.Value = Row[ "ID "].ToString();
Node.NavigateUrl = Row[ "linkurl "].ToString();
Node.ToolTip = Row[ "cname "].ToString();
treename.Nodes.Add(Node);
Node.Expanded = true;