dev GridControl 按条件纵向合并单元格
dev GridControl 按条件纵向合并单元格
gridView5.OptionsView.AllowCellMerge = true;
gridView5.CellMerge += gridView5_CellMerge;
//自定义合并单元格监听事件void gridView5_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e){int rowHandle1 = e.RowHandle1;int rowHandle2 = e.RowHandle2;string strValue1 = gridView5.GetDataRow(rowHandle1)["chbwtypename"].ToString(); //获取分数列值string strValue2 = gridView5.GetDataRow(rowHandle2)["chbwtypename"].ToString();if (strValue1 != strValue2){e.Merge = false; //值相同的2个单元格是否要合并在一起e.Handled = true; //合并单元格是否已经处理过,无需再次进行省缺处理}if (e.Column.FieldName != "chbwtypename") //只对分数这一列进行合并,其他列一律不合并{e.Merge = false; //值相同的2个单元格是否要合并在一起e.Handled = true; //合并单元格的操作是否已经处理过,不再需要进行省缺处理}}
反向合并
//自定义合并单元格监听事件
void gridView4_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e)
{
if (e.Column.FieldName == "chbJwightnum")
{
var val1 = gridView4.GetRowCellValue(e.RowHandle1, e.Column);
var val2 = gridView4.GetRowCellValue(e.RowHandle2, e.Column);
e.Merge = val1 == val2;
e.Handled = true;
}
if (e.Column.FieldName == "chbJrewightnum")
{
var val1 = gridView4.GetRowCellValue(e.RowHandle1, e.Column);
var val2 = gridView4.GetRowCellValue(e.RowHandle2, e.Column);
e.Merge = val1 == val2;
e.Handled = true;
}
if (e.Column.FieldName == "chbjscore")
{
var val1 = gridView4.GetRowCellValue(e.RowHandle1, e.Column);
var val2 = gridView4.GetRowCellValue(e.RowHandle2, e.Column);
e.Merge = val1 == val2;
e.Handled = true;
}
if (e.Column.FieldName == "chbjrescore")
{
var val1 = gridView4.GetRowCellValue(e.RowHandle1, e.Column);
var val2 = gridView4.GetRowCellValue(e.RowHandle2, e.Column);
e.Merge = val1 == val2;
e.Handled = true;
}
}
===============
/// <summary>/// 自定义合并列/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void gvSummary_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e){//只合并以下列名的单元格,其他列一律不合并if (e.Column.FieldName == "FCheckDisplay" || e.Column.FieldName == "FOutPlanNo" || e.Column.FieldName == "FSaleOrderNo" || e.Column.FieldName == "FBatchNo" || e.Column.FieldName == "FDeliveryTypeName" || e.Column.FieldName == "FDeliveryTime" || e.Column.FieldName == "FCustName" || e.Column.FieldName == "FProductCode" || e.Column.FieldName == "FProductName" || e.Column.FieldName == "FSpecsName" || e.Column.FieldName == "FMaterialStatus" || e.Column.FieldName == "FNum" || e.Column.FieldName == "FWeight" || e.Column.FieldName == "FMakeDate" ||e.Column.FieldName == "FMaker" || e.Column.FieldName == "FIssuer" || e.Column.FieldName == "FIssueDate"){int row1 = e.RowHandle1;int row2 = e.RowHandle2;string value1 = gvSummary.GetDataRow(row1)["FOutPlanNo"].ToString(); string value2 = gvSummary.GetDataRow(row2)["FOutPlanNo"].ToString();if (value1 != value2){e.Merge = false; //值相同的2个单元格是否要合并在一起e.Handled = true; //合并单元格是否已经处理过,无需再次进行省缺处理}}}
相关文章:
dev GridControl 按条件纵向合并单元格
dev GridControl 按条件纵向合并单元格 gridView5.OptionsView.AllowCellMerge true; gridView5.CellMerge gridView5_CellMerge; //自定义合并单元格监听事件void gridView5_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e){int rowHandle1…...
aws eks 集群初始化过程中pause容器的启动逻辑
eks集群默认策略在磁盘使用量达到threshold时会清除镜像,其中pause镜像也可能会被清除 https://aws.amazon.com/cn/premiumsupport/knowledge-center/eks-worker-nodes-image-cache/ pause容器能够为pod创建初始的名称空间,pod的内的容器共享其中的网络空…...
Numpy专栏目录(长期更新)
文章目录数组基础文件与字符串多项式分布Numpy绝对可以说是支撑Python地位的最重要的包了,几乎所有能叫出名的Python计算库,都不可避免地调用了Numpy,Numpy官网也列出了一些,大致如下图这样,堪称科学计算领域的瑞士军刀…...
English Learning - L2 第1次小组纠音 [ɑː] [ɔː] [uː] 2023.2.25 周六
English Learning - L2 第1次小组纠音 [ɑː] [ɔː] [uː] 2023.2.25 周六共性问题分析大后元音 [ɑː]大后元音 [ɔː]后元音 [uː]我的发音问题后元音 [uː]大后元音 [ɑː] 和 [ɔː]纠音过程第一次第二次第三次共性问题分析 大后元音 [ɑː] 嘴唇过于松散,没…...
博客系统程序(页面设计)
咱们学习javaEE的目的就是完成一个网站.在当前学习的基础上,已经可以完成我们的博客系统的页面的设计了!!!首先我们要进行统筹规划:首先我们的博客页面将会有4个页面:1.博客列表页2.博客详情页显示一个博客的具体内容:3.登录页就是用户输入用户名和页面的地方4.博客编辑页发布新…...
【死锁的排查工具有哪些?】
死锁是指两个或多个进程(线程)相互等待对方持有的资源,导致无法继续执行的情况。在并发编程中,死锁是一个常见的问题,需要使用专门的工具来进行排查和解决。 以下是常用的死锁排查工具: jstack:…...
JUC包:CyclicBarrier源码+实例讲解
1 缘起 上篇文章讲到了CountDownLatch:https://blog.csdn.net/Xin_101/article/details/129116170 作为同系的佼佼者,不得不提CyclicBarrier, 设计理念相似,都是多线程等待,但是,应用的技术以及功能不同&a…...
Trace、Metrics、Logging 选型
背景分布式追踪的起源自从微服务的兴起开始,整个系统架构开始变得极为庞大和复杂,但是服务之间的调用关系,调用消耗时间等等信息却依然是半黑盒的状态。为了能够将调用的链路进行串联,将系统的各种指标数据展示出来以使得系统的链…...
Java验证码
文章目录一、验证码概述二、Java原生验证码1、随机数字验证码2、随机数字和字母验证码3、运算验证码三、引入三方验证码一、验证码概述 验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全…...
5天带你读完《Effective Java》(四)
《Effective Java》是Java开发领域无可争议的经典之作,连Java之父James Gosling都说: “如果说我需要一本Java编程的书,那就是它了”。它为Java程序员提供了90个富有价值的编程准则,适合对Java开发有一定经验想要继续深入的程序员…...
探索密码学的未来:SM1、SM2、SM3、SM4、同态加密、密态计算、隐私计算和安全多方计算
密码算法在现代通信与信息安全中发挥着至关重要的作用,SM1、SM2、SM3、SM4、同态加密、密态计算、隐私计算和安全多方计算等密码算法被广泛应用于各种信息安全领域。本篇博客将会为大家介绍这些密码算法,以及它们在信息安全中的作用和应用。 一、SM1、SM…...
【教程】去水印开源工具Lama Cleaner在Windows的安装和使用
一、Lama Cleaner是什么? Lama Cleaner是一款开源且免费的人工学习图片去水印程序(个人主要学习用途),没有图片分辨率限制(个人使用暂未发现),并且保存的图片质量很高(个人觉得跟原…...
驾考笔记_2023
科目一1> 扣分制度1.1> 超速1.2> 超载1.3> 车牌1.4> 速记口诀2> 满分学习2.1> 消分学习2.2> 满分重考;3> 罚款 / 判刑3.1> 考证3.2> 审验教育3.3> 酒驾3.4> 200¥3.5> 500¥3.6> 2000¥…...
【架构师】跟我一起学架构——调用链
博客昵称:架构师Cool 最喜欢的座右铭:一以贯之的努力,不得懈怠的人生。 作者简介:一名Coder,软件设计师/鸿蒙高级工程师认证,在备战高级架构师/系统分析师,欢迎关注小弟! 博主小留言…...
[神经网络]Swin Transformer网络
一、概述 Swin Transformer是一个用了移动窗口的层级式Vision Transformer。 在图像领域,Transformer需要解决如下两个问题: ①尺度问题:同一语义的物体在图像中有不一样的尺度。(大小不同) ②Resolution过大:若以像素点作为单位&…...
【分布式】什么是分布式,分布式和集群的区别又是什么?答案在正文。
文章目录1. 什么是分布式 ?2. 分布式与集群的区别 ?3.用一个请求串起来4.一个简化的架构图5.分布式环境的特点6.分布式环境下面临的问题7.总结1. 什么是分布式 ? 分布式系统一定是由多个节点组成的系统。 其中,节点指的是计算机服务器,而且这些节点一…...
MyBatis框架的入门案例
MyBatis框架的入门案例 资源地址:https://download.csdn.net/download/weixin_41957626/87531373 1.MyBatis的配置 环境:基于maven的结构 1.1目录结构 1.2依赖包 <dependencies><!--mybatis--><dependency><groupId>org.mybatis…...
红黑树-随记
文章目录1.为什么hashmap用红黑树不用二叉树和平衡二叉树1.1 二叉树(Binary Search Tree)1.2 红黑树(Red Black Tree)1.3 平衡二叉树(Balence Binary Tree)也称AVT2.为什么mysql用b数,不用B数或…...
Python异常处理更新,正常和不正常的都在这里
嗨害大家好鸭!我是小熊猫~ 异常处理篇嗨害大家好鸭!我是小熊猫~Python标准异常💨什么是异常?不正常异常处理💨使用except而不带任何异常类型使用except而带多种异常类型try-finally 语句异常的参数触发异常用户自定义异…...
[数据结构]:10-二叉排序树(无头结点)(C语言实现)
目录 前言 已完成内容 二叉排序树实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-BinarySearchTreeCommon.cpp 04-BinarySearchTreeFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容,除其中使用到C引用外,全为C语言…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
