FarPoint.Win.Spread 自定义表头
软件开发技术交流,同学习共进步,欢迎加群, 群号:169600532 
最近C/S项目中用到FarPoint.Win.Spread,想在表头加个全选的checkbox,实现效果如图:

列的设置大家都清楚,直接可视化视图中设置该列CellType为CheckBox类型即可

表头的设置就需要费些周折了。一般是在加载时code,代码:
//设置行表头
FarPoint.Win.Spread.CellType.CheckBoxCellType celltype = new FarPoint.Win.Spread.CellType.CheckBoxCellType();
celltype.Caption = "全选";
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].CellType = celltype;
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text = "False";
由于我要把全选放在第一行,所以固定为【0,0】
然后需要给这个CheckBox定义点击事件,一般事件就是该控件的CellClick事件,详细代码如下:
private void spdPrintInfo_CellClick(object sender, CellClickEventArgs e)
{
if (e.Column == )
{
if (e.ColumnHeader)
{
if (spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text == "False")
{
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text = "True";
int rowcount = spdPrintInfo_Sheet1.RowCount;
for (int i = ; i < rowcount; i++)
{
spdPrintInfo_Sheet1.Cells[i, ].Text = "True";
}
}
else
{
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text = "False";
int rowcount = spdPrintInfo_Sheet1.RowCount;
for (int i = ; i < rowcount; i++)
{
spdPrintInfo_Sheet1.Cells[i, ].Text = "False";
}
}
}
else
{
if (spdPrintInfo_Sheet1.Cells[e.Row, ].Text == "False")
{
bool allCheck = true;
spdPrintInfo_Sheet1.Cells[e.Row, ].Text = "True";
for (int i = ; i < spdPrintInfo_Sheet1.RowCount; i++)
{
if (spdPrintInfo_Sheet1.Cells[i, ].Text == "False")
{
allCheck = false;
break;
}
}
if (allCheck)
{
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text = "True";
}
}
else
{
spdPrintInfo_Sheet1.Cells[e.Row, ].Text = "False";
//将表头也设置为不勾选
spdPrintInfo_Sheet1.ColumnHeader.Cells[, ].Text = "False";
}
}
}
}
如此,自己coding的全选就完成了,方法不是最好的,欢迎大家指正或建议更高效、简单的方法。
FarPoint.Win.Spread 自定义表头的更多相关文章
- FarPoint.Win.Spread 常规操作
FarPoint.Win.Spread.FpSpread fSpread = new FarPoint.Win.Spread.FpSpread(); //设置 行数.列数 ...
- QTableWidget自定义表头QHeaderView加全选复选框
1 QTableWidget自定义表头QHeaderView加全选复选框 在使用QTableWidget时需要在表头添加全选复选框,但是默认的表头无法添加复选框,只能用图片画上去一个复 ...
- vue + element ui 表格自定义表头,提供线上demo
前言:工作中用到 vue+element ui 的前端框架,需要使用自定义表头,需要使用 re.转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9710826.h ...
- ElementUI2.0组件库el-table表格组件如何自定义表头?
效果图: npm run dev 编译项目之后,报错,要使用jsx语法需要先安装编译插件 1.安装下列安装包 npm install babel-plugin-syntax-jsx --save-de ...
- element之table自定义表头
1.实现效果 2.使用render-header可以自定义表头 <el-table-column prop="date" label="日期" sorta ...
- ElementUI的Table-column_render-header自定义表头
ElementUI的Table表格,官方网站上提供了很多样式,但是在日常开发中还会碰到各种情况,显然官方提供的是不能满足需求的.那么,我们就根据自己的需求对table进行改造. 先丢出关于Table的 ...
- WPF DataGrid 复合表头 (实现表头合并,自定义表头)
功能说明: 将 DataGrid嵌套在本控件内,使用Label自定义表头,如果需要上下左右滚动 需要在控件外围添加 ScrollViewer 并且设置 ScrollVisibility 为Auto ...
- gridview自定义表头
gridview为我们提供了丰富的接口,用于满足自定义需求. 通常asp:gridview会根据绑定的列Columns自动生成表头,展现在前台元素. 序号 类别 有时候需要复杂一些的表头. 序号 类别 ...
- [Qt]自定义表头实现过滤功能
1. 写在前面 过滤功能源自项目上交互优化用户体验,在表头添加过滤符号实现过滤,替换以往在表格上方占用一行过滤项进行过滤. 2. 过滤提示 过滤提示就是三态图标(normal,hover,press) ...
随机推荐
- TP框架 基础1
php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...
- ajax 写登录
AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). ajax的优点: 1.最大的一点是页面无刷新,用户的体验非常好. 2.使用 ...
- C++设计模式:Template Method
我使用过一个简单的后台服务框架.这个框架上手很容易,我只需要继承一个基类,同时实现,或重写(override)基类声明的几个接口(这些接口声明为虚函数,或者纯虚函数),然后调用基类定义好的run()函 ...
- 转换器2:ThinkPhp模板转Django模板
前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...
- 1707: [Usaco2007 Nov]tanning分配防晒霜
1707: [Usaco2007 Nov]tanning分配防晒霜 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 548 Solved: 262[Sub ...
- css布局与盒子模型
一. 盒子模型 注: 1.红色为border; 2.背景应用于内容.内边距.边框组成的区域: 3.Width和height指的是内容区域的高度和宽度. 边框属性: 1. padding属性:( ...
- JS中的普通函数和箭头函数
最近被问到了一个问题: >javaScript 中的箭头函数 (=>) 和普通函数 (function) 有什么区别? 我当时想的就是:这个问题很简单啊~(flag),然后做出了错误的回答 ...
- JS-DOM . 01 简单了解DOM
DOM概述 html加载完毕,渲染引擎会在内存中把html文档生成一个DOM树,getElementById是获取内DOM上的元素,然后操作的时候修改的是该元素的属性 体验事件/事件三要素1.事件源( ...
- JD . 圆角矩形、权重层级、浮动撑开盒子及元素的默认间距、清除浮动、隐藏盒子、盒子的撑开与撑破、子盒子垂直居中|不占位置
---恢复内容开始--- 圆角矩形 border-radius:50% 40% 30% 33px: 像素.百分比.小数( 0.5 ) 左上.右上.右下.左下 权重: 标签 1 : 类选择器 ...
- NumPy入门及基础
1.1 NumPy 数组对象 NumPy中的ndarray是一个多维数组对象,该对象由两部分组成: 实际的数据; 描述这些数据的元数据. 大部分的数组操作仅仅修改元数据部分,而不改变底层的实际 ...