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) ...
随机推荐
- 使用Visual Studio 2017作为Linux C++开发工具
Visual Studio 2017 微软的宇宙第一IDE Visual Studio 2017正式版出来了,地址是:https://www.visualstudio.com/vs/whatsnew/ ...
- Servlet中编码在过滤器中的使用
1.先配置web.xml ->配置过滤器 // filter-class 为写的过滤器类 实现 Filter 接口 <filter> <filter-name>Encod ...
- 获取bing图片并自动设置为电脑桌面背景(C++完整开源程序)
众所周知,bing搜索网站首页每日会更新一张图片,张张漂亮(额,也有一些不合我口味的),特别适合用来做电脑壁纸. 我们想要将bing网站背景图片设置为电脑桌面背景的通常做法是: 上网,搜索bing 找 ...
- java-信息安全(二)-对称加密算法DES,3DES,AES,Blowfish,RC2,RC4
概述 信息安全基本概念: DES(Data Encryption Standard,数据加密标准) 3DES(Triple DES,三重数据加密算法(TDEA,Triple Data Encrypti ...
- [lua] mac上如何编译snapshot(检测Lua中的内存泄露)
最近我们的unity手游频繁闪退,只要进入战斗场景,之后一段时间就会闪退,如果是在unity编辑器中则会报出not enough memory的错误!猜测应该是有内存泄漏: 由于我们使用了tolua, ...
- iOS开发RunLoop
最近处于离职状态,时间也多了起来,但是学习还是不能放松,今天总结一下RunLoop,RunLoop属于iOS系统层的东西,还是比较重要的. 一.什么是RunLoop 字面意思看是跑圈,也可以看作运行循 ...
- 关于DLL的学习
1.前言: 人总归还是要有梦想的,不然跟咸鱼有什么区别.这一周给自己定下了研究DLL的任务还是要逼自己完成的呀,上了一天的党校,游戏也不打在这里写博,心疼自己.话说为什么要给自己下这样一个任务呢,是因 ...
- https单向认证和双向认证区别
关于证书 1.每个人都可以使用一些证书生成工具为自己的站点生成证书(比如jdk的keytool),大家称它为“自签名证书”,但是自己生成的证书是不被互联网承认的,所以浏览器会报安全提示,要求你手动安装 ...
- es6中的let声明变量与es5中的var声明变量的区别,局部变量与全局变量
自己通过看typescript官方文档里的let声明,与阮一峰老师翻译的的es6学习文档,总结以下三点 1.var声明可以多次重复声明同一个变量,let不行 2.let变量只在块级作用域里面有效果,v ...
- 【JavaWeb】Session(转)
Session是服务器端技术,利用这个技术,服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象,由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自 ...