Microsoft Dynamics AX 2009网格着色问题

时间:2015-02-19 14:07:01

标签: axapta microsoft-dynamics dynamics-ax-2009

所以我试图用不同的颜色着色表格线。如果我检查current.PrimaryTransportation复选框在一行,我得到的是一个大的黄色网格

我使用的代码如下所示:

public void displayOption(Common _record, FormRowDisplayOption _options)
{
    SIS_ResourcesTmp        buffer = _record;
    SIS_ResourceSum         current = SIS_ResourceSum_DS.cursor();

    #define.grey(12895428)
    #define.white(16448250)
    #define.yellow(3927039)
    ;

    _options.backColor(#grey);

    if (!current.VendorPrice && !current.UnitConvertRate) {
        if (!current.UnitConvertToTons && !current.DistanceVendorToObject && current.PrimaryTransportation) {
            _options.backColor(#yellow);
        }
    } else {
       _options.backColor(#white);
    }

    SIS_ResourcesTmp_ds.refresh();
}

2 个答案:

答案 0 :(得分:1)

使用参数_record检查是否将当前行的颜色设置为黄色。

答案 1 :(得分:0)

这取决于你的场景,但我认为你需要一个嵌套if语句的其他条件。或者我宁愿尝试消除嵌套,如果这样:

if (!current.VendPrice && 
    !current.UnitConvertRate && 
    !current.UnitConvertToTons &&
    current.PrimaryTransportation)
{
    _options.backColor(#yellow);
}
else
{
    _options.backColor(#white);
}