我想实现c#winform访问access数据库,并用数据库动态生成treeview节点

看了很多例子,都是如何把现有表的数据添加进treeview里,并生成相应级别的节点。
我需要完成的是:除了能加节点进来,还要通过窗口添加地址,把地址分段按级别放到数据库表里,并生成相应的id号和pid号。这个该怎么实现呢,希望朋友们能讲的详细一点,非常感谢。
还要让 一级节点的编号为001,002,003……等。
然后下一级的编号为。001001,001002,001003,……002001,002002,002003……
数据库中现有的记录能生成相应的记录,同时在treeview的某个节点处,点右键,选“添加”。可以把生成新的节点,同时把该节点相应的id和pid的值也生成放到数据库里边。。。

我觉得好难做呀。大家可以说的具体一点好吗,谢谢。

private DataTable dt = null;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
dt = help.fangfa("select * from tree").Tables[0];//查询数据库数据
TreeView(0, TreeView1.Nodes);//调用下面方法
}

}
private void TreeView(int a, TreeNodeCollection node) //treeview 集合
{
DataRow[] dr = dt.Select("P_tree_id=" + a);//筛选与0匹配的父级
TreeNode tn = null; //创建树节点
foreach (DataRow li in dr)
{
tn = new TreeNode();
tn.Text = li["tree_bumen"].ToString(); //筛选子级
tn.Value = li["tree_id"].ToString();
TreeView(Convert.ToInt32( li["tree_id"].ToString()), tn.ChildNodes);//在遍历父级以下节点
node.Add(tn); //把节点加入集合
}
}
楼主自己看吧,相信你能看懂
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-03-01
这个很难吗?

你需要在数据库中加一个列表示当前节点的父节点,或它的路径。我用的是路径

id号
名称
路径

根节点的路径为空。

要加入一个point1.point2.point3.point4

只要依据“.”号把上面路径切开,然后,一个个构造成相应的数据对像写入数据库就行了

我想实现c#winform访问access数据库,并用数据库动态生成treeview...
protected void Page_Load(object sender, EventArgs e){ if (!IsPostBack){ dt = help.fangfa("select * from tree").Tables[0];\/\/查询数据库数据 TreeView(0, TreeView1.Nodes);\/\/调用下面方法 } } private void TreeView(int a, TreeNodeCollection node) \/\/treeview 集合 { DataRow[]...

C# Winform 动态创建treeview实现.
TreeNode node;dataView.RowFilter = "Menu_parent=" + "'" + parentId + "'";\/\/数据分流 foreach (DataRowView dataRowView in dataView){ node = new TreeNode();node.Text = dataRowView["Menu_name"].ToString();\/\/添加节点的名称 node.NavigateUrl=dataRowView["Menu_url"].ToStri...

c#怎么从数据库读表并动态生成treeview
1.先整体取出LName的数据,2。再循环遍历LName数据,每一个LName为其声明一个treenode对象,且根据当前Lname获取子数据CName,再内嵌一个循环遍历子数据CName,每一个CName对应声明一个treenode对象(这些treenode作为当前LName对应treenode的子节点)。

C# winform 中 treeview 动态添加节点问题
treeView1.Nodes.Add(root);\/\/将节点添加到treeView1上 DataSet ds = GetData("select distinct 区域位置 from T_Machines");\/\/获取数据集dataset foreach (DataRow row in ds.Tables[0].Rows){ TreeNode node = new TreeNode(row["区域位置"].ToString());node.Name = row["区域位置"]....

...中从数据库中查询出数据并将数据绑定到TreeView上..并按照编号位数...
\/\/\/ 节点绑定的Tag值在数据库中的字段 public static void bind_treeview(TreeView tv, DataTable dt, int Filterid, TreeNode node,string Node_FLZD,string NodeText_ZD,string NodeTag_ZD)\/\/绑定treeView的方法。{ DataView subView = dt.DefaultView;subView.RowFilter = Node_FLZD + "=...

C#动态给treeview控件添加节点和子节点
treeview 鼠标点击一个节点,那么这个节点是处于选中状态的,它会有明显的蓝色背景,而且只有一个处于选中状态 treeview.SelectNode 就是选中的节点 此为方法一 方法二:设置treeview 有一个属性,是否显示复选框,好像叫做ShowCheckBox 设置为true,你每次勾选节点前面的复选框,然后怎么判断是否选中呢?...

c#winform如何把treeview节点存入数据库
想用一个数据存储整个树,请将树转换为xml并存储,节点数据需要体现在xml内;想要一条记录保存一个节点,请保存节点的FullPath属性值,该值在一棵树内是唯一的。节点数据可以在其他列存储。反过来,从数据库生成数。xml转换成树很简单;一堆节点拼接成一棵树需要分析其路径,可以将记录按FullPath字符串...

■★c#怎么动态生成数据库啊
-Access数据库文件-一直下去就能访问access数据库,也能产生默认的链接串。至于动态生成树节点,需要写代码实现,没有简单的办法。我这儿有一个不知道你能不能看懂。using System;using System.Collections.Generic;using System.Text;using System.Windows.Forms;using System.Data;using System.Data.SqlClient;namespace ...

如何把数据库里面的数据绑定到Treeview控件中,我用的是C#连得SQL Serve...
将数据添加进去 { TreeNode node = new TreeNode();node.Text = dtNodeDepartment.Rows[i][0].ToString().Trim();\/\/ 您的需求是对该行数据 根据节点的级别,求day,或求hour,或求year,然后绑定到nodetext就行了。node.Name = "单位编号";treeView.Nodes.Add(node);} 祝你成功!!

C# WinForm如何编辑TreeView每个节点
可以通过给每一个节点的Tag赋值,当点击时,读出点击行的Tag,然后做相应的处理!!!当前节点:TreeView1.SelectedNode 给你写个例子:TreeNode node = new TreeNode();node.Text = "aa";node.Tag = "1";treeView1.Nodes.Add(node);node.Text = "bb";node.Tag = "2";treeView1.Nodes....

相似回答
大家正在搜