如果在DataGrid中用了一个radioButton 的renderer,radioButtonGroup,
private function rememberSelectedStrategyId():void
{
selectedStrategyId = cloneDataGrid.selectedItem.strategyId;
for each(var gecStrategyForClone:GecStrategyForCloneVO in cloneDataGrid.dataProvider)
{
gecStrategyForClone.isSelected = false;
}
cloneDataGrid.selectedItem.isSelected = true;
isStrategyForCloneSelected = true;
}
]]>
</mx:Script>
<mx:RadioButtonGroup id="selectStrategyGroup" change="rememberSelectedStrategyId();"/>
render:
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml"
verticalScrollPolicy="off" horizontalScrollPolicy="off">
<mx:Script>
<![CDATA[
import mx.utils.ObjectUtil;
import flash.events.Event;
import mx.controls.RadioButtonGroup;
private var _radioGroup:RadioButtonGroup;
[Bindable("radioGroupChanged")]
public function get radioGroup():RadioButtonGroup
{
return _radioGroup;
}
public function set radioGroup(value:RadioButtonGroup):void
{
_radioGroup = value;
dispatchEvent(new Event("radioGroupChanged"));
}
]]>
</mx:Script>
<mx:RadioButton xmlns:mx="http://www.adobe.com/2006/mxml" group="{radioGroup}" value = "{data.strategyId}" horizontalCenter="0" paddingLeft="2" paddingRight="2" selected="{data.isSelected}"/>
</mx:Canvas>
不知道为什么在dataGrid中的radioButton有一些已经选中但却显示不出来,似乎是界面没有刷新。