Я использую искру DataGrid. Я хочу, чтобы эмуляция Excel Behavior = Когда выбрана одна ячейка, и пользователи начинают вводить на клавиатуре, выбранные ячейки переходят в режим редактирования. Я сделал это, начав gridItemEditorSession на 1-ом случае KeyDown, но проблема у меня в том, что после того, как начальное значение gridItemEditorSession в ячейке выбирается таким образом, второй KeyDown удаляет 1-ый KeyDown характер;/Spark DataGrid выбрана редактирование ячейки на keyDown
Вот демо: Просто выберите любую ячейку и начало :
<?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">
<fx:Script>
<![CDATA[
private function onKeyDown():void
{
trace(dataGrid.grid.anchorRowIndex)
trace(dataGrid.grid.caretRowIndex)
dataGrid.startItemEditorSession(dataGrid.grid.anchorRowIndex, dataGrid.grid.anchorColumnIndex)
}
private function onGridRollOver():void
{
}
]]>
</fx:Script>
<s:DataGrid id="dataGrid" requestedRowCount="5" width="350" editable="true"
height="300" selectionMode="multipleCells" keyDown="onKeyDown()"
gridRollOver="onGridRollOver()">
<s:ArrayCollection>
<s:DataItem key="1000" name="Abrasive" price="100.11" call="false"/>
<s:DataItem key="1001" name="Brush" price="110.01" call="true"/>
<s:DataItem key="1002" name="Clamp" price="120.02" call="false"/>
<s:DataItem key="1003" name="Drill" price="130.03" call="true"/>
<s:DataItem key="1004" name="Epoxy" price="140.04" call="false"/>
<s:DataItem key="1005" name="File" price="150.05" call="true"/>
<s:DataItem key="1006" name="Gouge" price="160.06" call="false"/>
<s:DataItem key="1007" name="Hook" price="170.07" call="true"/>
<s:DataItem key="1008" name="Ink" price="180.08" call="false"/>
<s:DataItem key="1009" name="Jack" price="190.09" call="true"/>
</s:ArrayCollection>
</s:DataGrid>
</s:Application>
Я вижу, что могу изменить значение в ячейке, как ожидалось. Не могли бы вы рассказать о своей проблеме более подробно? – gbdcool