Прослушивание события dataChange в AdvancedDataGrid - PullRequest
0 голосов
/ 29 марта 2011

Это мой код:

<controls:AdvancedDataGrid id="adg" dataChange="adg_dataChangeHandler(event)">
      <!-- other stuff goes here -->
</controls:AdvancedDataGrid>

и в моем коде ActionScript:

protected function adg_dataChangeHandler(event:FlexEvent):void
{
  trace(1);
}

Когда я редактирую ячейку в advancedDataGrid (конечно, делая столбцы редактируемыми), она никогда не отправляет событие. Или, другими словами, моя функция никогда не вызывается. Как я могу это исправить?

1 Ответ

1 голос
/ 29 марта 2011

Я думаю, что лучшим вариантом для моего сценария является использование itemEditor, для которого слушатель помещает событие change. Код выглядит так:

<controls:AdvancedDataGrid id="adg">
   <controls:groupedColumns>
      <adgs:AdvancedDataGridColumn headerText="A" wordWrap="true" dataField="name" editable="false" itemEditor="Aaa"/>
    </controls:groupedColumns>
</controls:AdvancedDataGrid>

и класс редактора предметов находится здесь:

<?xml version="1.0" encoding="utf-8"?>
<mx:TextInput xmlns:fx="http://ns.adobe.com/mxml/2009" 
              xmlns:s="library://ns.adobe.com/flex/spark" 
              xmlns:mx="library://ns.adobe.com/flex/mx" change="textinput1_changeHandler(event)" restrict="0-9">

    <fx:Script>
        <![CDATA[
            protected function textinput1_changeHandler(event:Event):void
            {
                trace("ha");
            }
        ]]>
    </fx:Script>

</mx:TextInput>
...