devexpress vgridcontrol displayformatstring不起作用

时间:2014-09-20 07:02:55

标签: devexpress displayformat

我有一个未绑定的vgrid控件。一个字段的未绑定表达式是这样的:

Iif([NETSAL]=0, 0, [GP] / [NETSAL] * 100 )

未绑定类型为十进制,格式类型为数字,格式字符串为n1。

问题是,我没有获得正确的格式化值。 F. e。如果gp = 200且netsal = 1500,我应该得到:13,3,但我得到0,0。我检查了计算值,这也是0,0。

但是如果gp = 2500 ant netsal = 1000,则值为200,看起来该值是舍入的。

但为什么?

感谢。

1 个答案:

答案 0 :(得分:1)

表达式结果类型取决于表达式成员类型。在您的情况下,表达式 [GP] / [NETSAL] 的所有成员都是整数值。这就是为什么结果四舍五入到最接近的整数值。

向表达式添加十进制常量值会将表达式结果的类型更改为十进制。根据{{​​3}},可以使用特殊文字声明数字常量的类型。对于十进制类型,文字是' m'。

尝试以下表达式,它应该按预期工作:

Iif([NETSAL]=0, 0, 1m * [GP] / [NETSAL] * 100 )