关于treeview手动添加的方法
1.首先判断有没有父节点,有父节点的,NEW一个父节点然后增加;没有父节点就选当前的节点 treeView2.Nodes.Add(newChildNode);
2.父节点的判断可以用leveL来判断
3.下面的程序其实是增加第二个阶梯(level =1),当你右击第一个阶梯时(level=0,父节点),那么程序增加的是第二阶梯(第一阶梯的子节点);当你选第二阶梯,增加的是兄节点
总结:这个是固定一个右键上的增加固定窗口,比如增加的窗口始终是在第二阶梯,也就是下面的程序是增加第二阶梯的
public void AddChildNode(TreeNode tn, string NewChileName)
{
if (tn.Level == )
{
TreeNode parentNode = tn.Parent;
TreeNode newChildNode = new TreeNode(); newChildNode.Text = NewChileName;
parentNode.Nodes.Add(newChildNode);
}
else if ( tn.Level ==)
{
TreeNode newChildNode = new TreeNode();
newChildNode.Text = NewChileName;
tn.Nodes.Add(newChildNode);
}
}
——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
二 还有一个程序是,固定增加项的 ,比如:右击上的选择有一个增加兄类,也就是说不管你点那个节点,他增加的都是兄类;或者增加子节点的,不管你选什么节点,他都是增加的子节点
这个程序简单,但是实用性没有上面的强,毕竟我们增加固定项的时候多,也就是说我们无论点父节点还是本节点 ,右键上显示的增加“固定项”,都能在第二阶梯显示,而这个程序当我们点本项的时候只能增加子节点
private void AddChildNode(TreeNode tn, string NewChileName)
{
TreeNode newChildNode = new TreeNode();
newChildNode.Text = NewChileName;
tn.Nodes.Add(newChildNode);
}
看两个图片比较就明白了,你总不能让操作者来选择父节点和兄节点吧
固定选项
固定节点,也就是第二个,这个程序也好写,但是。。。。。
关于treeview手动添加的方法的更多相关文章
- Windows服务的手动添加和删除方法
Windows服务的手动添加和删除方法 服务,是指执行指定系统功能的程序.例程或进程,以便支持其他程序,尤其是低层(接近硬件)程序.其实,服务就是一种特殊的应用程序,它从服务启动开始就一直处于运行状态 ...
- 更新Android Studio,提示后直接点更新即可。gradle 两种更新方法,我用的第二种:手动添加gradle
直接更新即可. 更新完毕后,随即会让你更新gradle,但是会一直更新一直更新...... 解决方法: 第一种方法: 手动下载Android Studio 对应的 gradle版本,然后设置一下即可. ...
- IOS手动添加CoreData
手动添加coreData: 1.在target-build phrase-Link binary with libraries里增加CoreData Framework 2.加入数据模型:comman ...
- 如何手动添加Windows服务和如何把一个服务删除
windows 手动添加服务方法一:修改注册表 在注册表编辑器,展开分支"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services" ...
- elasticsearch中国字(mmseg)——手动添加字典
elasticsearch中国文字本身并不是一个理想的插件效果.手动添加字典可以补偿在一定程度上. 后发现了几个实验,mmseg分段机制采用正向最长匹配算法.例如,抵抗"小时报"这 ...
- Maven手动添加jar包
有的jar在Maven中找不到则需要手动添加(如ojdbc14.jar) 方法如下: 一.将你要添加的jar包放到指定目录(在该目录下打开命令窗口) 二.输入指令:mvn install:instal ...
- Quartz动态添加定时任务执行sql(服务启动添加+手动添加)
系统用来每天插入视图数据... 一.数据库表设计 1.接口配置表(t_m_db_interface_config) 2.接口日志表(t_m_db_interface_log) 3.前端配置页面 查询页 ...
- Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包
一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mv ...
- iOS 自己手动添加编译警告
文/青花瓷的平方(简书作者)原文链接:http://www.jianshu.com/p/b2e30cad2a0d著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 缘由 上一次生产环境我们 ...
随机推荐
- servlet session 相关
1.session是server维护的一个变量,如果消除每个session?----这里只做指定key的session删除 1.1.显示调用 废除指定key的session session.remov ...
- Linux_文件查看
文件查看 直接查看内容:cat , tac , nl 翻页查看:more , less 指定获取内容:head , tail 查看非纯文字文档:od 文件时间更新与新建:touch cat: 从首行开 ...
- Android-----工程文件目录介绍
- sign in和sign up区别
如果是网站的话sign up是注册,sign in是登录的意思,另外,sign out退出
- mysql批量替换指定字符串
将字段title中的abc替换为123 UPDATE `table1` SET `title` = replace(title, 'abc', '123') WHERE `typeid` =18;
- 数的长度---nyoj69
超时 #include <stdio.h>#include <string.h>#define M 1000001int shu[M]; int main(){ int n, ...
- Array-练习-自定义功能
//html part <script type="text/javascript" src="out.js"></script> &l ...
- String-原型属性(练习)
1.js部分/* *字符串新功能,添加一个字符串转成数组. *返回一个数组 */String.prototype.toCharArray = function(){ //定义一个数组 var chs ...
- HDU 1160 FatMouse's Speed(要记录路径的二维LIS)
FatMouse's Speed Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Bootstrap:表格和栅格分页
拼接table请将以下代码直接运行:换下 bootstrap.css jquery-1.12.3.min.js bootstrap-paginator.min.js" <!DOCT ...