我有一个简单的问题,似乎没有一个简单的解决方案。我有一个数据网格,如果单击并已选中,则应取消选择行。怎么做?
我正在查看不同的“item”事件,但是在调度它们时已经选择了行,因此无法判断它是否已被选中。
有人可以帮我解决一个我可能错过的非常简单的事吗?
答案 0 :(得分:2)
试试这个:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Array id="arr1">
<mx:Object label="One fish" />
<mx:Object label="Two fish" />
<mx:Object label="Tree fish" />
<mx:Object label="Four fish" />
</mx:Array>
<mx:DataGrid id="dataGrid2"
click="test(event)"
dataProvider="{arr1}"
draggableColumns="false"
width="100%"
height="100%" >
<mx:columns>
<mx:DataGridColumn dataField="label" width="50" />
</mx:columns>
</mx:DataGrid>
<mx:Script>
<![CDATA[
private var lastIndex :Number = -1;
private function test(evt:MouseEvent):void
{
if(dataGrid2.selectedIndex == lastIndex)
dataGrid2.selectedIndex = -1;
lastIndex = dataGrid2.selectedIndex;
}
]]>
</mx:Script>
</mx:Application>