我正在尝试为 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;
}
但是背景颜色不会改变。
我听说葡萄藤上我可能需要重写一些方法来启用背景颜色属性。
任何帮助,将不胜感激 。
问候卡尔
我已经做过类似的事情,但就我而言,颜色也来自数据,但这会对您有所帮助。
您必须重写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);
}
}
通过这个,您可以从行中获取任何数据,并根据它给出颜色。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)