07 июл. 2009 г., 09:16 отalexandrulKarl

Flex Advanced Datagrid Условие Цвет фона строки

Я пытаюсь установить цвет фона строки для расширенного элемента управления сеткой данных в Flex 3. Кто-нибудь знает, возможно ли это с помощью функции стиля. В настоящее время моя функция стиля выглядит следующим образом:

public function myStyleFunc(data:Object, col:AdvancedDataGridColumn):Object 
         {
            if (data["status"] == "PRICING") 
                return {color:0xFF0000 , fontWeight:"bold" , backgroundColor:0xFF0000}; 


            // Return null if the Artist name does not match.
            return null;     
         }      

Однако цвет фона не меняется.

Я слышал на виноградной лозе, что мне может потребоваться переопределить некоторые методы, чтобы включить свойство цвета фона.

Любая помощь будет признательна.

Regards Карл

Ответы на вопрос(1)

03 июл. 2009 г., 12:06 отRahul Garg

но в моем случае цвет также исходил из данных, но это поможет вам. Вы должны переопределить 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);         
        }           
    }

Благодаря этому вы можете получить любые данные из строки и в соответствии с этим дать цвет.

ВАШ ОТВЕТ НА ВОПРОС