FlexGrid问题集锦(二):解决常见的开发问题

发布时间:2017/05/27 00:05 发布者:jeffryli

返回博客中心

概述

        主要是将以往我们论坛,售后解决的常见的经典问题,整合成一个问题集锦,里面讲述开发者在开发过程中遇到的一些问题,希望能帮助更多的开发人员。

经典一:

应用场景:

Q:flexgrid怎么改变非编辑区域颜色和编辑区域显示网格?

A:C1FlexGrid可以通过设计器和代码来设置颜色样式,选择C1FlexGrid控件,右键菜单打开Styles,可以设置如下样式:
      rmal-BackColor(设置普通状态的背景色)
      ternate设置隔行效果
      Editor-设置编辑的Editor的效果
      EmptyArea设置灰色区域的效果。

image

经典二:

应用场景:

Q:我想在FlexGrid中隐藏某些行或列,我目前是把相关行列的宽度高度设为0,有没其他方法吗?另外,我用flexgrid自带导出excel,能否把隐藏的行或者列不导出?如果没有办法,哪只能重新单独做报表了。

A:首先在设计视图下智能菜单中找到某列,复选框可见去掉,就隐藏,或者在列设计器里面把需要隐藏的列的Visble设为false,以使用代码编程方式: 码中c1FlexGrid1.Cols[0].Visible = false;c1FlexGrid1.Rows[0].Visible = false;//设置某行为隐藏,设置为隐藏其实就是把某列某行的宽度、高度设为0;

对于导出方式很多选项,针对的你的需要你只要在导出的时候选择;这个属性c1FlexGrid1.SaveExcel(@"c:\XXX.xls", FileFlags.VisibleOnly),在excel中就不会导出隐藏的行列,具体可查看FileFlags的所有导出模式类型。

未隐藏数据列:image

隐藏第五行第五列:

image

按FileFlags.VisibleOnly方式导出:

image

经典三:

应用场景:

Q:禁用FlexGrid的滚轮,使滚动鼠标滚轮时FlexGrid没有任何动作?

A:禁用鼠标滚轮,需要您重写flexgrid的WndProc消息处理,在里面重新定义不接收滚轮消息。

01.public class NoMouseWheelGrid : C1.Win.C1FlexGrid.C1FlexGrid
02.    {
03.        override protected void WndProc(ref Message m)
04.        {
05.            // ignore all mouse wheel messages
06.            const int WM_MOUSEWHEEL = 0x020a;
07.            if (m.Msg == WM_MOUSEWHEEL)
08.            {
09.                return;
10.            }
11.
12.            // process other messages as usual
13.            base.WndProc(ref m);
14.        }
15.    }

后续我还会继续整理一些经典案例和大家一起分享,希望能帮助到大家。

FlexGrid问题集锦(一):解决常见的开发问题

如果你有疑问,可以到GCDN获得技术支持:

http://gcdn.grapecity.com.cn/showforum-68.html

GCDNhttp://gcdn.grapecity.com.cn/

官方网站/developer


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网