我用的是一个框架,左边是树,右边是用来显示内容,
数据库设计首先,我们在SQL SERVER 2000里建立一个表tbTree,表的结构设计如下:
列名 数据类型 描述 长度 主键
ID Int 节点编号 4 是
ParentID Int 父节点编号 4
ConText Nvarchar 我们要显示的节点内容 50
数据库设计首先,我们在SQL SERVER 2000里建立一个表tbTree,表的结构设计如下:
列名 数据类型 描述 长度 主键
ID Int 节点编号 4 是
ParentID Int 父节点编号 4
ConText Nvarchar 我们要显示的节点内容 50
解决方案 »
- 移动短信开发,短信关联问题
- 用c# 怎么写电脑控制LED灯亮的程序 怎么来调用下面的函数 代码 (急)
- 如何将dataSet中的数据导入到Excel文件(*.xls)中???
- 如何旋转向量使两个向量重合??
- DataGrid被点击标头后,会自动排序,请问这时触发了什么事件,那个排序的字段如何获得?
- 谁有军旗的代码c#的可以发一份给我呀就10分了!
- datagrid 固定表格宽度,固定每一列的宽度
- 求C# 系统设计文档,及开发资料
- 为什么我的程序在调试的时候有时会报这种错误呢,是什么地方设置的问题,还是代码的问题呢
- 为什么在DataGrid中的事件SelectedIndexChanged不响应它的方法??
- DropDownList 如何绑定数据库中的数据?
- 验证控件的正则表达式
{
DataView dv=new DataView();
TreeNode tmpNd;
string intId;
dv.Table=dsMenuInfo.Tables[0];
dv.RowFilter="parentId="+parentId ;
foreach(DataRowView drv in dv)
{
tmpNd=new TreeNode();
// tmpNd.DefaultStyle="font-size:8pt ";
tmpNd.ID=drv["menu_ID"].ToString(); tmpNd.Text=drv["menu_name"].ToString().Trim();
tmpNd.ImageUrl="../"+"images/image.gif";
tmpNd.SelectedImageUrl="../"+"images/selectedimage.gif";
tmpNd.NavigateUrl=".."+drv["url"].ToString()+";//存放右边框架需要显示的地址url
//tmpNd.NavigateUrl="../"+drv["url"].ToString();
Nds.Add(tmpNd);
intId=drv["parentId"].ToString();
InitTree(tmpNd.Nodes,tmpNd.ID);
}
}
然后在这个结构上,就可以画树了。
如果用普通的方法建树就没有这种问题
public void AddTree(int ParentID,TreeNode pNode)
{
DataSet ds=(DataSet) this.ViewState["ds"];
DataView dvTree = new DataView(ds.Tables[0]);
dvTree.RowFilter = "[PARENTID] = " + ParentID; foreach(DataRowView Row in dvTree)
{
TreeNode Node=new TreeNode() ;
if(pNode == null)
{
Node.ID = Row["ID"].ToString();
Node.Text = Row["ConText"].ToString();
TreeView1.Nodes.Add(Node);
Node.NavigateUrl="userInfo.aspx?txtID="+Row["ID"].ToString ()+"&txtConText="+Row["ConText"].ToString()+"&txtParentID="+Row["ParentID"].ToString();
AddTree(Int32.Parse(Row["ID"].ToString()), Node);
}
else
{
Node.ID=Row["ID"].ToString();
Node.Text = Row["ConText"].ToString();
pNode.Nodes.Add(Node);
//pNode.NavigateUrl="userInfo.aspx?txtID="+Row["ConText"].ToString ();
pNode.NavigateUrl="userInfo.aspx?ttxtID="+Row["ID"].ToString ()+"&ttxtConText="+Row["ConText"].ToString()+"&ttxtParentID="+Row["ParentID"].ToString();
AddTree(Int32.Parse(Row["ID"].ToString()),Node);
}
}
}
没有Node。ID这个属性啊!!
我吗,我怎么没看到啊