int i;
int intLen;
string strSQL;
string strTblName;
DataRow dr;
strTblName="表名";
strSQL="语句";
...............
ds=填充DataSet;
...............
intLen=ds.Tables[strTblName].Rows.Count;
for(i=0;i<intLen;i++)
{
TreeNode trnTmp=new TreeNode();
dr=ds.Tables[strTblName].Rows[i];
trnTmp.NavigateUrl=dr["字段"].ToString();
trnTmp.Text=dr["字段"].ToString();
trvMenu.Nodes.Add(trnTmp);
}
int intLen;
string strSQL;
string strTblName;
DataRow dr;
strTblName="表名";
strSQL="语句";
...............
ds=填充DataSet;
...............
intLen=ds.Tables[strTblName].Rows.Count;
for(i=0;i<intLen;i++)
{
TreeNode trnTmp=new TreeNode();
dr=ds.Tables[strTblName].Rows[i];
trnTmp.NavigateUrl=dr["字段"].ToString();
trnTmp.Text=dr["字段"].ToString();
trvMenu.Nodes.Add(trnTmp);
}
解决方案 »
- 前台JavaScript获得如何接收后台类中ajax注册方法的值
- repeater 双击表头排序,囧
- 想利用GridView的Footer实现新增功能,不知道该怎么写?
- .net初学者调用数据库出错!
- 附加自动命名的资料库之尝试失败。相同名称的资料库已经存在、无法开启指定的档案或者它位于UNC共用中
- 求助!
- 如何实现统计功能????泣求!!!
- 【急 50分】存储函数中的一句话怎么在sql里写? if zzl<变量1 and cc>变量2 then return zzz; 要用sign函数么?
- 一个.NET程序员的痛苦?
- 一个奇怪的问题,,请大家来看看
- 各位大虾,帮小弟一个忙~
- 没登陆用什么标识用户?
具体方法是:创建一个数据库,设计树图信息表TREE_INFO,包含NODEID、PARENTID、NODENAME、ADDERSS、ICON字段,其它字段根据实际业务而定,节点名称NODENAME将在树型控件的节点上显示,NODEID字段保存节点的唯一标识号,PARENTID表示当前节点的父节点号,标识号组成了一个“链表”,记录了树上节点的结构。设计一个Web窗体其上放置TreeView控件。
实例的表结构如下:主键 字段名 类型 长度 可空
1 NODEID int 4 0
0 PARENTID int 4 0
0 NODENAME nvarchar 100 0
0 ADDERSS nvarchar 100 1
0 Img nvarchar 100 1
0 ImgEx nvarchar 100 1实例程序如下:
public class WebForm1 : System.Web.UI.Page
{
protected Microsoft.Web.UI.WebControls.Toolbar Toolbar1;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
protected System.Web.UI.WebControls.Label a;
protected connect_strings SqlCn;
string CnString;
protected System.Web.UI.WebControls.TextBox TextBox1;
DataSet objDataSet = new DataSet(); private void Page_Load(object sender, System.EventArgs e)
{
Class1 TestClass=new Class1();
TestClass.TestString="fjdkls;a";
CnString=SqlCn.SQLConnectionString;
if (!this.IsPostBack)
{
CreateDataSet();
intiTree(TreeView1.Nodes,0);
}
}
private void intiTree(TreeNodeCollection Nds , int parentId)
{
DataView dv=new DataView() ;
//DataRowView drv;
TreeNode tmpNd;
int strId;
dv.Table = objDataSet.Tables["TREE_INFO"];
dv.RowFilter = "PARENTID='" + parentId + "'";
foreach(DataRowView objRow in dv)
{
tmpNd=new TreeNode();
strId=(int)objRow["NODEID"];
tmpNd.ID=strId.ToString();
tmpNd.Text=objRow["NODENAME"].ToString();
tmpNd.ExpandedImageUrl =objRow["ImgEx"].ToString();
tmpNd.ImageUrl=objRow["Img"].ToString() ;
tmpNd.NavigateUrl =objRow["Adderss"].ToString() ;
Nds.Add(tmpNd);
intiTree(Nds[Nds.Count-1].Nodes,strId);
}
}
private void CreateDataSet()
{
SqlConnection objCn=new SqlConnection(CnString);
objCn.Open();
string strSql ="select * from TREE_INFO";
SqlDataAdapter objAdapter=new SqlDataAdapter(strSql,objCn);
objAdapter.Fill(objDataSet,"TREE_INFO");
}
}