2017-02-12 13 views
0

フレックスs:DataGrid/>に奇妙な問題があります。 gridItemEditorSessionSaveイベントが2回トリガされます。この問題を再現する最小限のコードは以下の通りです:私はセルを編集するときFlex Spark DataGrid GridItemEditorSessionSaveイベントの問題

<?xml version="1.0" encoding="utf-8"?> 
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx"> 

    <fx:Declarations> 
     <s:ArrayCollection id="dp"> 
      <fx:Object test="Test"/> 
     </s:ArrayCollection> 
    </fx:Declarations> 

    <fx:Script> 
     <![CDATA[ 
      import spark.events.GridItemEditorEvent; 

      protected function onGridItemEditorSessionSave(event:GridItemEditorEvent):void 
      { 
       trace("Edited >>>", event.columnIndex); 
      } 

      protected function onGridItemEditorSessionStart(event:GridItemEditorEvent):void 
      { 
       trace("Edit Start >>>", event.columnIndex); 
      } 

     ]]> 
    </fx:Script> 


    <s:DataGrid dataProvider="{dp}" width="100%" height="100%" editable="true" 
       gridItemEditorSessionSave="onGridItemEditorSessionSave(event)" 
       gridItemEditorSessionStart="onGridItemEditorSessionStart(event)"> 
     <s:columns> 
      <s:ArrayCollection> 
       <s:GridColumn dataField="test"/> 
      </s:ArrayCollection> 
     </s:columns> 
    </s:DataGrid> 

</s:WindowedApplication> 

は、トレース文は以下の通りです:onGridItemEditorSessionSaveを示し

Edit Start >>> 0 Edited >>> 0 Edited >>> 0

は二回トリガー!私は何かが足りないと確信しています。

ご協力いただきありがとうございます。

答えて

0

はい、バグのようです。このため他のレポートがあります。http://apache-flex-users.2333346.n4.nabble.com/spark-Datagrid-GridItemEditorEvent-firing-twice-td3582.html

私はItemListEditStartイベントでフラグ_goForCellEdit=trueを設定することで回避策を行い、gridItemEditorSessionSaveイベントでこれをチェックして、この議論で述べたように。ある人が同じ問題に遭遇したら、希望は助けになるでしょう。