0
我注意到Flex 4的datagrid上的这种行为,我在其中将网格的可见设置为FALSE。当我更新网格的dataProvider数据时,例如更新集合中的实体属性,网格将再次变为可见。Flex:update datagrid dataProvider导致datagrid的visible属性设置为TRUE
这是Flex中默认的datagird行为吗?我如何禁用它?
我注意到Flex 4的datagrid上的这种行为,我在其中将网格的可见设置为FALSE。当我更新网格的dataProvider数据时,例如更新集合中的实体属性,网格将再次变为可见。Flex:update datagrid dataProvider导致datagrid的visible属性设置为TRUE
这是Flex中默认的datagird行为吗?我如何禁用它?
我刚刚编写了一个快速的样品:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
creationComplete="application1_creationCompleteHandler(event)"
>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.events.FlexEvent;
[Bindable]
public var myData:ArrayCollection = new ArrayCollection;
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
var u:User;
for (var i:int=0; i < 5; i++)
{
u = new User();
u.name = "custom "+int(Math.random()*10);
u.phone = "0987 "+int(Math.random()*10);
myData.addItem(u);
}
}
protected function button1_clickHandler(event:MouseEvent):void
{
myData.getItemAt(0).name = "test";
}
]]>
</fx:Script>
<s:layout>
<s:VerticalLayout />
</s:layout>
<mx:DataGrid dataProvider="{myData}" visible="false">
<mx:columns>
<mx:DataGridColumn dataField="name" />
<mx:DataGridColumn dataField="phone" />
</mx:columns>
</mx:DataGrid>
<s:Button label="Change data" click="button1_clickHandler(event)" />
</s:Application>
而且DataGrid中知名度不被修改,所以显然是错误的东西在你的代码。 你能发表一些你的代码吗?