C#动态绑定treeview控件

前台只需要放一个 treeview控件就行
后台

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
bindTree();
}
private void bindTree()
{
DataTable dt = this.GetTreeData();
this.FillNode(dt, null);
}
private void FillNode(DataTable dt, TreeNode node)
{
DataView dv = new DataView(dt);
if (node == null) //根结点
{
dv.RowFilter = "parentid='0'"; //筛选到根结点的所有子节点
}
else //不是根结点
{
dv.RowFilter = "parentid='" + node.Value + "'"; //筛选对应节点的所有子节点
}
foreach (DataRowView drv in dv) //遍历填充节点的所有子节点,如果传入的节点node为叶子节点,遍历要退出,不再进行递归
{
TreeNode no = new TreeNode(drv["menuname"].ToString(), drv["menuid"].ToString());
FillNode(dt, no); //填充no节点的子节点
if (node == null)
{
this.TreeView1.Nodes.Add(no);
}
else
{
node.ChildNodes.Add(no);
}
}
}
private DataTable GetTreeData()
{
string strcnn = ConfigurationManager.ConnectionStrings["treecnn"].ConnectionString;
using (SqlConnection sqlcnn = new SqlConnection(strcnn))
{
SqlCommand sqlcmm = sqlcnn.CreateCommand();
sqlcmm.CommandText = "select * from MenuTree order by parentid,menuorder";
SqlDataAdapter da = new SqlDataAdapter(sqlcmm);
DataSet ds = new DataSet();
da.Fill(ds);
return ds.Tables[0];
}
}

时间: 2024-10-03 01:33:01

C#动态绑定treeview控件的相关文章

DELPHI中利用TreeView控件建立目录树

关于TreeView的使用,还可以参看:联合使用TreeView 组件 TreeView是一个显示树型结构的控件,通过它能够方便地管理和显示具有层次结构的信息,是Windows应用程序的基本控件之一.DELPHI虽然具有比较强大的文件管理功能,提供了多个用于文件管理的标准控件,如DriveComboBox.DirectoryListBox.FileListBox等,通过设置它们的属性,使其建立起联系,甚至不用编写一行程序,我们就可以实现在不同的目录之间进行切换,然而这样的目录切换只适用于进行文件

VB6将XML数据传入TreeView控件

treeview|xml|控件|数据 由于XML文档是以树形结构为格式,所以通常采用TreeView控件显示它们.以下码段说明了如何在Visual Basic 6将XML文档传入一个TreeView控件. 首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器. 接着,在Form_Load事件中添加如下的代码:   Private Sub Form_Load()Dim objDOM As DOMDocument S

创建可编辑的xml文档(之一)绑定xml文档到treeview 控件

treeview|xml|创建|控件 目录:    介绍    绑定xml文档到treeview 控件    过滤xml 数据    执行拖放操作    执行删除,改名,插入操作    使用中的treeview 控件   通过xml 和xpath 你可以毫不费力的为你的treeview控件增加拖放甚至更多的功能-by Alex Hildyard   最近,我一直在开发一个用来维护在线目录的用户界面工具,因为这个目录包含太多的产品,所以用一些方法对他们分类是很有意义的.目录管理员将需要有删除和定义

创建可编辑的xml文档(之五)执行中的treeview 控件

treeview|xml|创建|控件|执行 执行中的treeview 控件  为了更完美,列表4包含了VB.NET version, or C# version 两个版本的最终treevie 控件.为了更容易使用,我重新定义了结构和代码.同时增加了KeyDown 控制来支持一些默认的快捷键例如:Control-N (新建), F2 (编辑), 和DEL (删除).  这里好象不必附加任何事件,因此最终的api 包含一个方法和八个属性,他们在表1中列出来了,他们大多数都是简单的标志,或者默认的开关

在VB6中将XML传入一个TreeView控件

treeview|xml|控件 首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器. 接着,在Form_Load事件中添加如下的代码: Private Sub Form_Load() Dim objDOM As DOMDocument Set objDOM = New DOMDocument Call objDOM.loadXML( _ "") Call AddNode(objDOM.document

ASP.NET实现静态的TreeView控件导航

ASP.NET提供了一系列拥有页面导航功能的控件,这些控件包括在页面显示菜单的Menu控件.提供站点导航的Site MapPath控件和显示层次结构的树形(TreeView)控件.本章的示例将介绍这些控件在创建Web应用程序中的应用. 实现静态的TreeView控件导航 TreeView控件是一个树形结构的控件.该控件用于显示分层数据,如文件目录.TreeView控件的每个节点是一个TreeNode对象,具有Text属性和Value属性,Text属性指定在节点显示的文字,Value属性是获取节点

如何使用 .net 的TreeView控件

treeview|控件     ASP.NET真正有用的特性就是其可扩充性.世界各地的开发人员都可以创建自己的自定义控件,这种自定义控件可以方便地在你自己的过程中进行定义.其中,Internet Explorer Web Controls就是由微软公司在标准的ASP.NET控件之外创建的这样一个集合. WINDOWS资源管理器中的驱动器和其下的文件及文件夹就是按照一种层次结构来安排的,在这个控件集中有一个treeview控件为我们提供了一种按层次结构显示信息的方式.treeview控件包含了称做

在.NET开发中灵活使用TreeView控件

treeview|控件 ASP.NET真正有用的特性就是其可扩充性.世界各地的开发人员都可以创建自己的自定义控件,这种自定义控件可以方便地在你自己的过程中进行定义.其中,Internet Explorer Web Controls就是由微软公司在标准的ASP.NET控件之外创建的这样一个集合. Windows资源管理器中的驱动器和其下的文件及文件夹就是按照一种层次结构来安排的,在这个控件集中有一个treeview控件为我们提供了一种按层次结构显示信息的方式.treeview控件包含了称做"节点&

C#:从DataGridView控件托放数据到TreeView控件

datagrid|treeview|控件|数据 实现方法,在datagridview的mousedown事件中开始 托放.然后在treeview 的 DragEnter 中接收托放.最后在treeview的 DragDrop 中处理托放结果.注:treeview的allowdrop属性要设置为 true.: 1private void dataGridView1_MouseDown(object sender, MouseEventArgs e) 2        { 3