合并datagridview 条件合并行数据
public void HeBing()
{
int rowsCount;
int CellCount;
rowsCount = FG1.Rows.Count;
CellCount = FG1.Columns.Count;
for (int a = ; a < rowsCount; a++)
{
string F_OnlyCode = FG1.Rows[a].Cells[].Value.ToString();
string F_Code = FG1.Rows[a].Cells[].Value.ToString();
double quanty = double.Parse(FG1.Rows[a].Cells[].Value.ToString());
if (quanty < )
{
for (int b = ; b < rowsCount; b++)
{
string F_Code1 = FG1.Rows[b].Cells[].Value.ToString();
double quanty1 = double.Parse(FG1.Rows[b].Cells[].Value.ToString());
string f_Onlycode = FG1.Rows[b].Cells[].Value.ToString();
if (F_Code == F_Code1 && f_Onlycode != F_OnlyCode )
{
// 出库计费等于退费
if (quanty1 == -quanty)
{
//FG1.Rows.RemoveAt(a);
FG1.Rows[a].Visible = false; for (int c = ; c < FG1.Rows.Count; c++)
{
if (FG1.Rows[c].Cells[].Value.ToString() == F_Code)
{
FG1.Rows[c].Visible = false; }
}
} //出库计费大于退费
if (quanty1 > -quanty && quanty1 != quanty)
{
FG1.Rows[b].Cells[].Value = (quanty - (-quanty1)).ToString("F3");
this.FG1.Rows[b].DefaultCellStyle.BackColor = Color.Aqua;
FG1.Rows[a].Visible = false; }//出库计费小于退费
if (quanty1 < -quanty && quanty1 != quanty)
{ this.FG1.Rows[b].Cells[].Value = ((quanty1) + (quanty)).ToString("F3");
//this.FG1.Rows.RemoveAt(a);
FG1.Rows[a].Visible = false;
}
if (quanty1 == quanty && quanty < && quanty != quanty)
{
FG1.Rows[a].DefaultCellStyle.BackColor = Color.Aqua;
} } }
} }
//只存在退费信息
for (int u = ; u < rowsCount; u++)
{
if (double.Parse(FG1.Rows[u].Cells[].Value.ToString()) < )
{
this.FG1.Rows[u].DefaultCellStyle.BackColor = Color.Red;
}
} }
四种合并情况:
出库计费等于退库计费
出库计费大于退库计费
出库计费小于退库计费
只存在退库计费
合并datagridview 条件合并行数据的更多相关文章
- Magicodes.IE Excel合并行数据导入教程
说明 Magicodes.IE.Excel目前已支持合并行单元格导入,如本篇教程所示. 安装包Magicodes.IE.Excel Install-Package Magicodes.IE.Excel ...
- Excel动态合并行、合并列
背景: 在北京工作的时候,又一次同事问了我这样一个问题,说我要把从数据库获取到的数据直接通过NPOI进行导出,但是我对导出的格式要特殊的要求,如图: 冥思苦想,最终顺利帮同事解决问题,虽然有点瑕疵,但 ...
- for xml path 按分类合并行数据
) as itemnum FROM ( SELECT Sonum, (SELECT ItemNum+',' FROM testtb WHERE Sonum=A.Sonum FOR XML ...
- git入门五(分支合并冲突和衍合)
分支合并冲突的处理 合并分支的冲突时在不同的分支中修改了同一个文件的同一部分,程序无法把两份有差异的文件合并,这时候需要人为的干预解决冲突.当前处于master 分支,当dev 分支和master ...
- SQL实现多行合并一行 .
ORACLE纯SQL实现多行合并一行[转] 项目中遇到一个需求,需要将多行合并为一行.表结构如下:NAME Null Type ...
- DP石子合并问题
转自:http://www.hnyzsz.net/Article/ShowArticle.asp?ArticleID=735 [石子合并] 在一个圆形操场的四周摆放着n 堆石子.现要将石子有次序 ...
- element 动态合并表格
前言 element 官方的例子太简单了,不满足实际的需求 数据肯定是动态的,合并的行数,列数都是动态的,该如何知道每一行的合并数呢 需求 动态合并表格,数据来源于数据库 正文 一开始,我的数据源是单 ...
- [C1] C1FlexGrid 行列增删&单元格合并拆分
上一篇中实现了 C1FlexGrid的撤销还原功能,这篇是要仿 Excel 做一个行列删除以及单元格的自由合并拆分,楼主怕在原工程里复杂的说不清道不明,所以干脆提取出来做了一个 Demo 来说明实现过 ...
- 为什么margin-top不是作用于父元素【margin外边距合并问题】
coding时发现margin-top居然没作用于本元素上,而是作用到了父元素上. 原来是margin外边距合并导致的.以下是网上搬运来的知识: margin外边距合并详解:外边距合并现象在网页布局中 ...
随机推荐
- awk常见基本使用
-F 指定分割符号 print 外层的引号必须是单引号 $n不能被解析 [root@bogon ~]# .txt a:b:c:d a1:b1:c1:d1 a2:b2:c2:d2 a_: :c:dddd ...
- 【转】Jenkins+Ant+Jmeter搭建持续集成的接口测试平台
一.什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻 ...
- 微信小程序之目录结构
小程序,功能不会太多,页面不会太多. 正常情况下,会包含首页,分类页面,个人中心页面,导航页面,其他页面等等. 我们首先要把页面结构布置好,把架子搭建好. 剩下的就是配置一些内容,小程序的基本信息,接 ...
- PCB打样前的注意事项
0.画板前,在制定规则的时候,一定要查看生产厂家的生产工艺. (厂家能打几层板.最小间距.焊盘最小和最大尺寸等等) 1.查看焊盘的孔径是否合适. (检查能否插进去) 2.仔细检查购买的三端器件的引 ...
- Python类(二)-类的继承
单继承 #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" class People: def __init__(self,name ...
- 第七章 AOP(待续)
···············
- java的mysql初探
在实现如下demo之前,要安装mysql的驱动mysql-connector-java-gpl-5.1.26.msi DEMO: /* * 简单数据库测试 * @李志杰 * 2013-8-4 */ p ...
- Flask之单元测试
5.2单元测试 为什么要测试? Web程序开发过程一般包括以下几个阶段:[需求分析,设计阶段,实现阶段,测试阶段].其中测试阶段通过人工或自动来运行测试某个系统的功能.目的是检验其是否满足需求,并得出 ...
- java5 Condition用法--实现线程间的通信
Condition的功能类似在传统线程技术中的Object.wait()和Object.natify()的功能,传统线程技术实现的互斥只能一个线程单独干,不能说这个线程干完了通知另一个线程来干,Con ...
- Functions & Closures
[Functions] 1.不带返回值的函数: 2.通过tuple返回元素 返回的tuple可按如下方式使用: 3.External Parameter: External parameter的使用: ...