关于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著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 缘由 上一次生产环境我们 ...
随机推荐
- unity3d插件Daikon Forge GUI 中文教程2-基础控件Label的使用
我们先来设置 UI Root 中的如下:屏幕大小为1024*768 2.1 新建一个Label 控件 先来看看Control Properties (基本上是所有控件都共用的)的以后不再介绍,参数: ...
- 解析私有IP地址和公网IP地址
局域网私有IP地址上外网的原理 IP地址分为两部分,网络号和主机号,这种分法应用在私有和公有IP地址上.一个局域网中,为了该局域网的安全,我们应用了私有IP地址,为了和Internet中的其他主机进行 ...
- redis发布订阅
命令 : redis-cli打开一个客户端 Redis Psubscribe 命令订阅一个或多个符合给定模式的频道. 每个模式以 * 作为匹配符,比如 it* 匹配所有以 it 开头的频道( it.n ...
- DataTable的一些用法
手动给DataTable添加数据 DataTable tab = new DataTable(); tab.Columns.Add("id", typeof(int));//添加列 ...
- shell 常用正则
shell常用正则表达式 “^\d+$” //非负整数(正整数 + 0) “^[0-9]*[1-9][0-9]*$” //正整数 “^((-\d+)|(0+))$” //非正整数(负整数 ...
- 日历js插件
因为做了一个培训管理模块,要有一个开始与结束培训时间.时间日期如果个用户手动输入的话,即使你要求了时间格式,但是用户可能还是会输错时间格式.所以想想,还是找了一个js日历插件.下面来介绍下我自己用的一 ...
- Mysql和Oracle数据库concat()函数
一.函数的使用参数不同 Mysql支持多个字符串拼接: CONCAT(str1,str2,-) Oralce只支持两个字符串的拼接,若想拼接多个字符串可以嵌套使用concat CONCAT(str1, ...
- openfire配置MSSQL说明(数据库设置)
1.进入“SQL Server 配置管理器(SQL Server Configuration Manager)”,在左边窗口选择“SQL Server 2005网络配置”下面的分支“MSSQLServ ...
- codeforces480E Parking Lot
题目大意:给一个点阵,其中有的地方没有点,操作是去掉某个点,并询问当前点阵中最大的正方形 若没有修改的话,裸dp 加上修改,可以考虑时光倒流,这样答案就是递增的 可以用并查集维护点的连通性,O^2的 ...
- JS开发windows phone8.1系列之2
http://msdn.microsoft.com/zh-cn/library/windows/apps/dn629636.aspx Windows.Storage.ApplicationData.r ...