SIr*_*lot 5 apache-flex air adobe datagrid
我在Flex DataGrid上使用默认拖放,但是,dataGrid本身有一个itemrenderer.好像:
public class FlashFileDataGridRenderer extends Label{
public function FlashFileDataGridRenderer(){
super();
}
override protected function updateDisplayList (unscaledWidth:Number, unscaledHeight:Number):void {
super.updateDisplayList(unscaledWidth, unscaledHeight);
this.setStyle("paddingLeft", "3");
if (data instanceof FlashEntryBean) {
if ((data.cutFlag)) {
setStyle("color", "#AAAAAA");
}
else
setStyle("color", "#000000");
}
Run Code Online (Sandbox Code Playgroud)
这适用于数据网格中的所有项目.在拖动时,这不再显示具有较低alpha的代理.我希望能够保留该样式,如何确定此特定项目是否正在应用itemrenderer.我在想如果我可以确定对象是否是代理,然后自己淡化文本.
谢谢!
尝试将 setStyle 调用移至重写的设置数据方法
override public function set data(t:Object):void
{
super.data = t;
if (data instanceof FlashEntryBean) {
if (data.cutFlag)
setStyle("color", "#AAAAAA");
else
setStyle("color", "#000000");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
564 次 |
| 最近记录: |