Для датагрида я использую такой рендерер

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<s:MXDataGridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:controls="radiobutton.*"
focusEnabled="true"
creationComplete="init()">
<fx:Script>
<![CDATA[
import mx.controls.DataGrid;
[Bindable]
public var master:DataGrid;
override public function set data(value:Object):void
{
super.data = value;
}
private function init():void
{
master = owner as DataGrid;
}
]]>
</fx:Script>
<controls:RadioButton verticalCenter="0" left="2" id="rbData" selected="{master.selectedItem == data}"/>
</s:MXDataGridItemRenderer>
Это то же самое, что alatar советует, только не кастомные кнопки юзаются, а именно радио кнопка меняет свое состояние слушая data.