Apache flex 如何在itemrenderer中重新加载复选框
我的datagrid中的复选框有问题。它拉入一个数据提供者(xml文件),我用它来设置带有自定义itemrenderer的复选框选择。然后,我将更新后的数据网格保存回xml文件 单击该复选框后,将保存为xml格式。。我知道这一点,因为当我重新加载应用程序时,它会显示正确的结果。然而,当我只是刷新dataprovider而没有关闭flex应用程序时,复选框就会恢复到更改之前的状态 下面是自定义复选框:Apache flex 如何在itemrenderer中重新加载复选框,apache-flex,Apache Flex,我的datagrid中的复选框有问题。它拉入一个数据提供者(xml文件),我用它来设置带有自定义itemrenderer的复选框选择。然后,我将更新后的数据网格保存回xml文件 单击该复选框后,将保存为xml格式。。我知道这一点,因为当我重新加载应用程序时,它会显示正确的结果。然而,当我只是刷新dataprovider而没有关闭flex应用程序时,复选框就会恢复到更改之前的状态 下面是自定义复选框: <?xml version="1.0" encoding="utf-8"?> <
<?xml version="1.0" encoding="utf-8"?>
<mx:CheckBox xmlns:mx="http://www.adobe.com/2006/mxml" >
<mx:Script>
<![CDATA[
override public function set data( value:Object ):void{
super.data = value;
trace("data = " + data.@hidden);
if(data.@hidden == "true")
{
this.selected = true;
}else
{
this.selected = false;
}
}
]]>
</mx:Script>
</mx:CheckBox>
这就是我所说的:
<mx:DataGridColumn width="75" headerText="hide?" dataField="@hidden">
<mx:itemRenderer>
<mx:Component>
<local:itemRendCheckBox />
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
我想现在发生的是,除了custome itemrenderer之外,所有的东西都在更新。我可以告诉复选框使用数据提供程序刷新吗?我想我已经弄明白了,我正在调用datagrid进行刷新,这与刷新实际的数据提供程序不同。因此,我没有调用myDataGrid.send(),而是调用了dataProv.dataprovider.refresh() 您是否在dataProvider变量上使用[Bindable]?展示更多的代码可能也会有帮助。作为一个补充,如果实际上不需要的话,为什么人们会觉得需要使用它呢?你会推荐什么,我还有很多东西要学习。我这样做基本上是因为我的另一种方式不起作用。