ASP.net 中关于控件Treeview的操作------ 节点查找、删除和添加
来源:互联网 发布:angularjs数据格式化 编辑:程序博客网 时间:2024/05/16 07:48
1、 节点查找:
首先要看以什么方式查找,比如是以节点的索引查找,还是以节点的名称或是其他条件查找?本项目中,到目前为止,我考虑的是以节点的名称准确匹配,查找递归函数如下:
public TreeNode RuleFind(string strFind)
{
TreeNode tnRet = null;
foreach(TreeNode tn in TreeView1.Nodes) )//Treeview1:查找树
{
tnRet = RuleFindNode(tn, strFind.Trim());
if (tnRet != null)
break;
}
return tnRet;
}
private TreeNode RuleFindNode(TreeNode tnParent, string strValue)//递归查找树型节点
{
if (tnParent == null) return null;
if (tnParent.Text.Trim() == strValue)
{
ExpandParent(tnParent); )//调用节点展开函数
tnParent.Selected = true;
return tnParent;
}
TreeNode tnRet = null;
foreach (TreeNode tn in tnParent.ChildNodes)// tnParent.Nodes)
{
tnRet = RuleFindNode(tn, strValue);
if (tnRet != null) break;
}
return tnRet;
}
另外为了使操作者一目了然,还需要节点展开函数(当然,如果树本身是展开的就无所谓了):
protected void ExpandParent(TreeNode node)//递归展开父节点
{
if (node.Parent != null)
{
node.Parent.Expanded = true;
node.Parent.Expand();
ExpandParent(node.Parent);
}
}
2、 节点添加:
public void AddNewNode(TreeNode nodeNew)
{
// TreeNode nodeNew = new TreeNode("NewNode");// 新建节点对象
nodeNew.Selected = true;
if (TreeView1.SelectedNode == null)
return;
switch (TreeView1.SelectedNode.Depth) //节点深度选择
{
case 0:
case 1:
case 6:
Response.Write("Not allow to add");
break;
default:
TreeView1.SelectedNode.ChildNodes. Add(nodeNew);
break;
}
}
从本函数看来,此树除了0、1 、6外都是可添加的节点。
3、 节点删除:
public void RemoveNode(TreeNode node)
{
if (node == null)
return;
TreeNode parentNode = nodeNew.Parent;
parentNode.ChildNodes.Remove( node);
}
- ASP.net 中关于控件Treeview的操作------ 节点查找、删除和添加
- ASP.Net中的TreeView控件中对节点的上移和下移操作
- asp.net treeview控件无刷新选择和删除节点的ajax方法
- asp.net treeview控件无刷新选择和删除节点的ajax方法
- asp.net treeview控件无刷新选择和删除节点的ajax方法
- asp.net 查找Treeview中被选中的节点
- treeview节点的添加和删除
- ASP.NET - 如何:添加或删除 TreeView 节点元素
- asp.net treeview数据库绑定 (节点添加 删除 修改)
- asp.net treeview数据库绑定 (节点添加 删除 修改)
- asp.net treeview控件无刷新选择和删除节点(使用jquery)
- asp.net treeview控件无刷新选择和删除节点(使用jquery)
- 关于ASP.NET中TreeView控件的一些体会
- ASP.NET中TreeView控件的使用方法
- C# 关于treeview的绑定和右键菜单添加删除子节点
- ASP.NET treeview 树控件的节点上下移动
- asp.net 中服务器端控件动态添加和删除
- 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作
- 剖析ASP.NET AJAX的面向对象思想
- 2009.01.01
- 全套人民币(纸币)图片欣赏------你认识多少张?
- 利用Java技术进行XML编程(续)
- 2009.01.02
- ASP.net 中关于控件Treeview的操作------ 节点查找、删除和添加
- 各种开发工具下载地址
- 2009.01.03
- 二元操作符重载
- 当前打印机驱动程序与计算机上启用的某个策略不兼容,阻挡了windows?NT?4.0或windows?2000内核模式驱动程
- 將EXCEL數據倒入MSSQL中的混合格式(2+2)出現NULL問題
- 如何在.net中配置自己的数据库
- Tiles与YUI LayoutManager的结合
- 关于F2812片内Flash烧写的问题