如何使用DataGrid中的styleFunction
程序员文章站
2022-07-07 20:57:08
...
Flex 中的DataGrid和DataGridColumn上都可以使用styleFunction,如果在DataGrid上使用,那么样式会应用到符合条件的整行,如果是在DataGridColumn上使用,那么样式只会应用到具体的列上,styleFunction的签名是固定的,如下:
其中的返回值为样式的name/value对,另外有一个非常重要的地方需要特别注意,这些样式其实是给itemRenderer使用的,也就是说只有你的itemRenderer里有这一样式属性,样式才会正确显示出来,DataGrid的默认itemRenderer为mx Text,而Text没有backgroundColor这一样式属性,所以上面的例子里你会发行背景颜色没有生效,虽然DataGridColumn有backgroundColor,但是Text里面根本没有这一项,所以如果你想加更多的样式属性的话,就得自己实现一个自定义的itemRenderer.
另外你可以通过myADG.invalidateList()来刷新DataGrid使其显示出样式,当然默认情况下当初始构造DataGrid或重构时都会自动调用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。
上一篇: 京东探索研究院:全球首次提出量子并行处理框架QUDIO
下一篇: Go 语言中的死锁问题解决
推荐阅读
-
大家帮帮忙~hash << 5 + hash 中的<<是什么意思?该如何处理
-
watch在Vue.js中的使用方法详解
-
Oracle Form中COMMIT的概述及使用技巧
-
使用PHP导出Redis数据到另一个Redis中的代码_PHP
-
mysql中sum float类型使用小数点的方法_MySQL
-
解析如何修改php myadmin中的默认登陆超时时间_PHP教程
-
JQuery Ajax 在asp.net中的使用并调用后台实例讲解
-
【转载】C#中ArrayList集合类使用RemoveAt方法移除指定索引的元素
-
html中关于表单标签form的使用详解
-
JavaScrpt中如何使用 cookie 设置查看与删除功能