合并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外边距合并详解:外边距合并现象在网页布局中 ...
随机推荐
- 校赛热身 Problem B. Matrix Fast Power
找循环节,肯定在40项以内,不会证明. #include <iostream> #include <cstring> #include <string> #incl ...
- android滚条简单说明
先看一下我自己写的布局,电脑屏幕太小,只截取到了一个radiobutton. 先画一个horizontalScrollView,因为我要做水平滚动,然后我需要水平布局,就添加了一个LinearLayo ...
- MyBatis多表映射demo
三个实体类,作者.文章和评论. public class Author { private int id; private String username; private String nickna ...
- mongoDB的了解
一.什么是mongoDB? 1.MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. 2.MongoDB 旨在为WEB ...
- 为什么要初始化css样式
因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异. 初始化CSS样式主要是提高编码质量,如果不初始化整个页面做完很糟糕,重复的CSS样 ...
- IDA Pro 权威指南学习笔记(四) - IDA 用户界面的基本规则
基本规则: IDA 不提供撤销功能 如果由于不小心按下某个键,导致数据库文件发生意外,这时需要将显示窗口恢复到以前的状态 几乎所有的操作都有其对应的菜单项.热键和工具栏按钮 IDA 的工具栏高度可配置 ...
- python学习——练习题(1)
""" 题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? """ import itertools d ...
- Mycat之日志分析 select * from travelrecord order by id limit 100000,100 的执行过程
解释:mycat在执行分页排序的时候,分成2步走.如果M很大,会改写成 limit 0,m+n, 然后在每个MYSQL分片上排序后还需要在mycat汇总输出,所以会很慢.下面是详细执行计划以及日志输出 ...
- pandas读写excel
import pandas as pd import numpy as np df = pd.read_csv("result.csv") # csv # df = pd.read ...
- UIThread
功能如下:点击Create则新创建一个窗口 一 . 资源中添加对话框,右键添加类MyDlg 双击初始对话框中的按钮,实现按钮功能:点击则创建一个对话框 CMyDialog* pDialog = new ...