내 코드를 살펴보십시오.
데이터 공급자에 필드가 하나 있습니다. 데이터 격자에서이 필드를 두 번 추가하여 편집 효과를 볼 수 있습니다. 두 번째 열의 값을 편집하고 Enter 키를 누르면 첫 번째 열의 결과를 볼 수 있습니다.
따라서 데이터 제공 업체는 항상 최신입니다.
여기는 working example입니다.
다른 것을 의미하는지 알려주세요.
<?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">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]private var myDP:ArrayCollection = new ArrayCollection([
{myfield:"Hello"},
{myfield:"World"}
]);
]]>
</fx:Script>
<s:DataGrid id="myDG" x="30" y="30" height="120" dataProvider="{myDP}" editable="true">
<s:columns>
<s:ArrayList>
<s:GridColumn dataField="myfield" headerText="My Field" width="120"/>
<s:GridColumn dataField="myfield" headerText="My Field Edit" editable="true" rendererIsEditable="true" width="120">
<s:itemRenderer>
<fx:Component>
<s:GridItemRenderer>
<fx:Script>
<![CDATA[
import spark.events.TextOperationEvent;
protected function textinput_changeHandler(event:TextOperationEvent):void
{
var value:String = (event.currentTarget as TextInput).text
data[column.dataField] = value;
}
]]>
</fx:Script>
<s:TextInput text="{data['myfield']}" change="textinput_changeHandler(event)"/>
</s:GridItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:GridColumn>
</s:ArrayList>
</s:columns >
</s:DataGrid>
</s:Application>
귀하의 도움에 감사드립니다. 그러나 데이터 그리드를 새로 고칠 때마다 우리는 오래된 값을 얻지 만 DataGrid에서 편집 한 후의 새로운 값을 어떻게 볼 수 있습니까? 나는 우리가 모든 데이터베이스에 그 dataprovider 값을 저장해야한다고 생각하거나 그것에 어떤 방법이있다. – user2083041
오른쪽! 그것은 귀하의 서버 기술 및 데이터베이스 제공 업체에 따라 다릅니다. 너는 무엇을 사용하니? – Anton
답장을 보내 주셔서 감사합니다. – user2083041