格式化数据网格行颜色基于两个单元格值

时间:2009-08-21 09:32:54

标签: flex datagrid

我有一个flex数据网格。它包含两列数学标记和英文标记。如果数学标记>英文标记为任何行,那么它会将该特定行颜色设置为绿色。您可以建议我如何做到这一点吗?

1 个答案:

答案 0 :(得分:1)

您好,这是您的答案,但在此我使用了AdvancedDataGrid 我做过类似的事情,但在我的情况下,颜色也来自数据,但它会帮助你。 您必须覆盖Datagrid并覆盖drawRowBackground方法

public class CustomDataGrid extends AdvancedDataGrid
    {   

        protected override function drawRowBackground(s:Sprite, rowIndex:int, y:Number, height:Number, color:uint, dataIndex:int):void{
              var XMLdata:XML=rowNumberToData(dataIndex) as XML;               
              if(XMLdata!=null){          
                        if(XMLdata.attribute(Constants.col) != undefined && XMLdata.attribute(Constants.col) != ""){
                            color=XMLdata.attribute(Constants.col);         
                        }else{
                            color=0xFFFFFF;
                        }                            
              }               
              super.drawRowBackground(s,rowIndex,y,height,color,dataIndex);         
        }           
    }

通过这个你可以从行中获取任何数据,并根据它给出颜色。

此链接更多Flex Advanced Datagrid Condition Row Background Color