找回密码
 立即注册

QQ登录

只需一步,快速开始

ffff666666

注册会员

5

主题

11

帖子

167

积分

注册会员

积分
167
ffff666666
注册会员   /  发表于:2018-11-29 13:04  /   查看:2724  /  回复:3
本帖最后由 ffff666666 于 2018-11-29 13:16 编辑

如下图所示,我在设计器里面构建好了表格,现在需要让合同金额这一列的数值除以1000,在设计表达式的时候,选择字段这里选择不了相应的字段,直接写的话,也没有相应的效果,请教应该如何设置?群友说,需要用datatable,我试了试把datatab赋值给gird,也重新生成了下,在选字段这里也是空白的,这个是什么原因呢?

本帖子中包含更多资源

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

x

3 个回复

倒序浏览
JeffryLI
葡萄城公司职员   /  发表于:2018-11-29 16:47:41
沙发
您这个不行,首先在设计器里面设计好的会被绑定的数据源冲掉,除非是直连数据库,而且绑定的数据源要是datatable的格式,设计器要在运行时使用,或者是代码设置,这个你可以参考我们的 \Documents\ComponentOne Samples\WinForms\ExpressionEditor\CS\FlexGridIntegration
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
ffff666666
注册会员   /  发表于:2018-11-29 20:03:47
板凳
JeffryLI 发表于 2018-11-29 16:47
您这个不行,首先在设计器里面设计好的会被绑定的数据源冲掉,除非是直连数据库,而且绑定的数据源要是data ...

谢谢你,我看了下文档。但还是有一个疑问:

  1. C1.Win.C1FlexGrid.Column c1 = FlexGrid.Cols["frameInvest_wy"];
  2.                 c1.Expression = "[frameInvest]/10000";
  3.                 c1.Caption = "合同总投资(万元)";
复制代码


我这样的代码设置,只对设计器里面没有数据的一列有作用,对已有的数据的列没有效果;
也就是说:
我的设置,无论在flexgrid.DataSource= list<实体>  之前还是之后,对frameInvest这列没有作用,
所以我得新增一列,叫frameInvest_wy(如上面的代码),得到需要的,然后把frameInvest这列隐藏。
有没有更简单的方法呢?

回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2018-11-30 09:22:58
地板
是的 ,表达式编辑器会重新在新的一列上计算,简单的方式就是你把参与运算的哪一列隐藏掉就可以了。这边还是建议您使用datatable,这样表格的过滤排序才会起作用
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部