首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

怎么使用DataGrid中的styleFunction

2012-11-23 
如何使用DataGrid中的styleFunctionFlex 中的DataGrid和DataGridColumn上都可以使用styleFunction,如果在D

如何使用DataGrid中的styleFunction
Flex 中的DataGrid和DataGridColumn上都可以使用styleFunction,如果在DataGrid上使用,那么样式会应用到符合条件的整行,如果是在DataGridColumn上使用,那么样式只会应用到具体的列上,styleFunction的签名是固定的,如下:

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

其中的返回值为样式的name/value对,另外有一个非常重要的地方需要特别注意,这些样式其实是给itemRenderer使用的,也就是说只有你的itemRenderer里有这一样式属性,样式才会正确显示出来,DataGrid的默认itemRenderer为mx Text,而Text没有backgroundColor这一样式属性,所以上面的例子里你会发行背景颜色没有生效,虽然DataGridColumn有backgroundColor,但是Text里面根本没有这一项,所以如果你想加更多的样式属性的话,就得自己实现一个自定义的itemRenderer.

另外你可以通过myADG.invalidateList()来刷新DataGrid使其显示出样式,当然默认情况下当初始构造DataGrid或重构时都会自动调用styleFunction。

热点排行