2010-05-11 61 views
1

我有一个datagrid,其datagridcolumn中的itemRenderer作为我的自定义组件(c1)。我通过重写set数据函数来获取自定义组件中的数据提供者数据,这很好。但是现在我的自定义组件(c1)也有另一个自定义组件(c2)。flex覆盖公共功能集数据

现在的疑问是 - 如何获得c2组件中的数据提供者数据?

在此先感谢。

+1

对不起,这不是很清楚。是c1的项目渲染器?数据网格? c1'如何拥有另一个自定义组件'? – quoo 2010-05-11 13:50:11

回答

4

假设c1是项目渲染器,而c2是itemRenderer的子项,您需要做的就是将子组件的data属性绑定到父数据属性,或者只传入必要的数据。您可能无法在设置数据函数中执行此操作,因为子组件可能不存在,所以您可能需要添加一个检查以确保子组件存在时,子组件也会设置数据。

<mx:Canvas> 
    <mx:Script> 
    <![CDATA[ 
     override public function set data(value:Object):void{ 
       super.data = value; 
       //do whatever w/ the data 
     } 
     ]]> 
    </mx:Script> 
    <components:MyCustomComponent id="c2" data="{data}" /> 
</mx:Canvas> 

(注意,这是伪代码,并可能完全错别字以及)