iReport3.0 遇到的condition style问题

iReport 产生的xml原始码是如下:

<style 
    name="old"
    mode="Opaque"
    forecolor="#990033"
>

    <conditionalStyle>
        <conditionExpression><![CDATA[$F{age}.intValue()>60?new Boolean(true):new Boolean(false)]]></conditionExpression>
        <style 
            name="old"
            isDefault="false"
            mode="Opaque"
            forecolor="#990033"
        >
        </style>
    </conditionalStyle>
</style>

注意到 最外层的style标签里面已经 有了

forecolor="#990033"
这个属性设置.因此,这里没有经过condition运算就已经生效了.

解决办法是,拿掉外层style tag中的 相关属性.

这个大概是iReport3.0的一个bug..

修改后的代码如下,可以正常工作

<style 
    name="old"
    mode="Opaque"   
>

    <conditionalStyle>
        <conditionExpression><![CDATA[$F{age}.intValue()>60?new Boolean(true):new Boolean(false)]]></conditionExpression>
        <style 
            name="old"
            isDefault="false"
            mode="Opaque"
            forecolor="#990033"
        >
        </style>
    </conditionalStyle>
</style>


参见stackoverflow 提问帖:

http://stackoverflow.com/questions/17575316/trouble-with-conditional-style



你可能感兴趣的:(iReport3.0 遇到的condition style问题)