DEV_TreeList使用经验小结
1. 点击叶子节点是希望Open键显示,点击非叶子节点时希望隐藏。实践中发现点击到了非叶子节点图标,Open没有隐藏,如何解决?
增加一个判断:
if (_hitInfo.HitInfoType != HitInfoType.Cell&&_hitInfo.HitInfoType!=HitInfoType.SelectImage)
{
return;
}
紫色代码用来判断当前鼠标点击点是否是节点所在的单元格;
红色代码用来判断当前鼠标点击点是否是节点的图标;
这样的话不论是点击单元格还是点击图标都能被捕捉到,只要点击了其中之一,Open键就会被隐藏(或者被显示)。
2. 右键删除节点时,如果其祖先节点都只有一个孩子,也就是相当于数据库中只有一条数据,此时删除了节点,则该节点的所有祖先节点也应该被删除;如果某一级的祖先节点由多于一个子节点,则该祖先节点和被删除节点之间的所有节点应该删除。(好绕口,不知道我需求的人估计看不明白,可是没时间详细解释了,有什么疑问请留言吧,具体情况具体沟通),如何解决?
public void HasChildNode()
{
treeList1.DeleteNode(treeList1.FocusedNode);
while (!treeList1.FocusedNode.HasChildren && !Equals(treeList1.FocusedNode.GetValue(columnID: ), "本地数据库"))//当删到“本地数据库”的时候就不再删除了
{
treeList1.DeleteNode(treeList1.FocusedNode);
}
//删除节点后,当前焦点必定不是叶子结点,所以使open间隐藏
lciBtnOpen.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
}
写了一个方法来判断。首先删除节点后,数据库中的节点数据已经删除。(我的所有节点数据都是在一张表中)接下来在刷新treelist 的情况下,删除节点用treelist 的 deletednode方法。删除当前节点后,treelist 的focusedNode 会自动转到删除节点的父节点上(或相邻兄弟节点),此时判断一些当前的节点是否有子节点,如果没有,就把当前节点也删除。
DEV_TreeList使用经验小结的更多相关文章
- 【心得】Lattice后端使用经验小结(ECP5UM,DDR3,Diamond3.10,Reveal逻辑分析)
[博客导航] [导航]FPGA相关 背景 下边的内容,适合初次使用Lattice的.具备FPGA开发经验的同学. 1.初次使用,还真遇到不少的坑,Lattice的工具也有不少优缺点,通过总结,希望能缩 ...
- Git使用经验小结
2012春,开始正式使用SVN,2014年9月加入一起好后,开始使用Git. 有了一些使用经验,也看了下网上关于"Git全胜SVN"的言论. 结合自己的实际情况,简要写几句: 1 ...
- mybatis 使用经验小结
一.多数据源问题 主要思路是把dataSource.sqlSesstionFactory.MapperScannerConfigurer在配置中区分开,各Mapper对应的包名.类名区分开 <? ...
- jmeter linux使用经验小结
1. 确认务必安装了JDK,并且把路径配置OK.否则执行会报错. 2. 当做负载机时,在hosts 配置上 你的ip 你的hostname 或者使用./bin/jmeter-server ...
- Struts2 interceptor使用经验小结
1. interceptor 调用Spring容器中的bean 在interceptor中常有需要调用Spring Bean的需要,其实很简单和Struts2的Action一样配置即可. Spring ...
- 性能测试工具Loadrunner使用经验小结(原创更新版)
1. 引言 1.1. 简介 loadrunner是一种预测系统行为和性能的负载测试工具,它可以轻松创建虚拟用户.创建真实的负载.定位性能问题.重复测试保证系统的高性能 globa-100的注册码:AE ...
- Kafka使用经验小结
本文尽量从一个使用者的角度去记录一些在实战当中使用Kfaka所需要关注的要点,这样可能会贴切更多的读者,本文并不会介绍太多的Kafka的一些架构层次设计的知识,因为网上已经有一大堆的重复搬运的资料任由 ...
- mybatis 使用经验小结 good
一.多数据源问题 主要思路是把dataSource.sqlSesstionFactory(用来产生sqlSession).MapperScannerConfigurer在配置中区分开,各Mapper对 ...
- mybatis: 利用多数据源实现分库存储
之前写过一篇mybatis 使用经验小结 提到过多数据源的处理方式,虽然简单但是姿势不太优雅,今天介绍一些更美观的办法: spring中有一个AbstractRoutingDataSource的抽象类 ...
随机推荐
- Web概述
Web概述 1. JavaWeb 使用java开发的基于互联网的项目 2. 软件架构 C/S:客户端服务器架构 优点:用户体验好,很多数据在本地 缺点:安装.开发.部署.维护麻烦 B/S:浏览器服务器 ...
- Maven安装及配置
第1部分 准备 1.1 安装JDK和Eclipse: 1.2 下载Maven(https://maven.apache.org/download.cgi) 第2部分 2.1 安装Maven 2.1.1 ...
- 使用PHP中的ajax做登录页面、验证用户名是否可用、动态调用数据库
1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...
- 拖动DIV
链接:https://www.cnblogs.com/joyco773/p/6519668.html 移动端:div在手机页面上随意拖动 1 <!doctype html> 2 & ...
- rem是怎么计算的
「rem」是指根元素(root element,html)的字体大小,从遥远的 IE6 到版本到 Chrome 他们都约好了,根元素默认的 font-size 都是 16px. rem是通过根元素进行 ...
- excel合并
import org.apache.commons.lang.StringUtils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; impor ...
- mongoose 连接数据库操作
连接数据库 var mongoose = require('mongoose'); var schema = mongoose.Schema; // 连接MongoDB mongoose.connec ...
- Revit二次开发之获得项目族预览图
using Autodesk.Revit.UI; using Autodesk.Revit.DB; using Autodesk.Revit.Attributes; using System.Wind ...
- Django ORM中,如何使用Count来关联对象的子集数量
示例models 解决方法 有时候,我们想要获取一个对象关联关系的数量,但是我们不要所有的关联对象,我们只想要符合规则的那些关联对象的数量. 示例models # models.py from dja ...
- js中split 正则表示式 (/[,+]/)
定义和用法 split() 方法用于把一个字符串分割成字符串数组. 语法 stringObject.split(separator,howmany) separator 作为分隔符,separator ...