找回密码
 立即注册

QQ登录

只需一步,快速开始

cyrixon

注册会员

2

主题

5

帖子

17

积分

注册会员

积分
17
最新发帖
cyrixon
注册会员   /  发表于:2017-6-19 12:39  /   查看:7082  /  回复:14
本帖最后由 cyrixon 于 2017-6-19 14:41 编辑

大家好
老版本代码升级 遇到下面问题
原来使用VB下的VSPrinter打印VSFlexGrid的内容  下面一句代码就建立起了两个控件的联系 解决了
            objVSPrinter.RenderControl = objVSFlexGrid.hWnd
现在在.Net下  把VSPrinter用C1PrintDocument替换升级  同时VSFlexGrid升级到C1FlexGrid
也想得到上面类似的写法 我应该怎么做才能实现 使用什么属性?
1.C1PrintDocument没有.RenderControl属性 这么建立与C1FlexGrid的关系
2.如果使用C1PrintDocument的.RenderDirect方法去 画一个 RenderTable 对象的话
   这个RenderTable 对象要怎么通过C1FlexGrid控件来得到?
3.C1PrintDocument的其他属性已经设置好 就想打印这个C1FlexGrid的内容
上记  希望得到大家帮助 谢谢大家

14 个回复

倒序浏览
JeffryLI
葡萄城公司职员   /  发表于:2017-6-19 15:44:05
沙发
您好:如果您想打印flexgird,flexgrid控件已经内置了打印属性和方法。flexGrid.PrintGrid(fileName, C1.Win.C1FlexGrid.PrintGridFlags.ShowPrintDialog);,看看能不能满足您的要求。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
cyrixon
注册会员   /  发表于:2017-6-19 16:04:20
板凳
JeffryLI 发表于 2017-6-19 15:44
您好:如果您想打印flexgird,flexgrid控件已经内置了打印属性和方法。flexGrid.PrintGrid(fileName, C1.Wi ...

首先谢谢您及时回复

C1FlexGrid的打印方法已经调查过了
但是因为 我们手上的是VB升级上来的程序
打印的功能有大量的自定义换行 折行 换页的需求
原来的做法是 把基础的FlexGrid数据读到一个临时的FlexGrid中
通过各种逻辑 隐藏相关列 隐藏相关行 保留固定行 来得到一个数据视图 去满足分页打印
以前这个临时的视图FlexGrid 直接赋给vsPrinter控件就可以了

我们也想把这样一个同逻辑生成的作为视图功能的FlexGrid 直接关联到 C1PrintDocument上
或是和一个RenderTable对象建立起一个对应关系
希望在这个方向上得到强力支持   谢谢
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-19 17:30:32
地板
您好,这个暂时还没有,先给您一个别的解决方案,看看是否能帮到您。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
cyrixon
注册会员   /  发表于:2017-6-26 09:12:37
5#
JeffryLI 发表于 2017-6-19 17:30
您好,这个暂时还没有,先给您一个别的解决方案,看看是否能帮到您。

谢谢 等稍候我研究一下
那么使用C1FlexGrid自带的print方法 可以实现两个C1FlexGrid打印在一个C1PrintDocument上么?

我现在的思路是自己写了一个函数 遍历C1FlexGrid的行宽列高内容
来生成一个randerTable 但是我现在无法模仿如何合并单元格
C1FlexGrid的合并单元格的集合有接口可以得到么?
谢谢
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-26 10:43:45
6#
您好,FlexGrid没有提供合并单元格的接口。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
ggggdiu
初级会员   /  发表于:2017-6-27 09:41:13
7#
cyrixon 发表于 2017-6-26 09:12
谢谢 等稍候我研究一下
那么使用C1FlexGrid自带的print方法 可以实现两个C1FlexGrid打印在一个C1PrintDo ...

其实可以根据FlexGrid的合并风格反算出来的。
回复 使用道具 举报
ggggdiu
初级会员   /  发表于:2017-6-27 09:41:25
8#
cyrixon 发表于 2017-6-26 09:12
谢谢 等稍候我研究一下
那么使用C1FlexGrid自带的print方法 可以实现两个C1FlexGrid打印在一个C1PrintDo ...

其实可以根据FlexGrid的合并风格反算出来的。
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-27 10:03:46
9#
ggggdiu 发表于 2017-6-27 09:41
其实可以根据FlexGrid的合并风格反算出来的。

您好,谢谢您提供的思路,如果您能提供一个demo,我们可以给您金币奖励。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
ggggdiu
初级会员   /  发表于:2017-6-28 15:02:02
10#
JeffryLI 发表于 2017-6-27 10:03
您好,谢谢您提供的思路,如果您能提供一个demo,我们可以给您金币奖励。

写了一个DEMO,楼主可以试试

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +200 收起 理由
JeffryLI + 200 赞一个!

查看全部评分

回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部