首页 > 开发 > Flex > 正文

Flex4 DataGrid中如何嵌入RadioButton

2024-09-08 18:16:59
字体:
来源:转载
供稿:网友


<s:DataGrid fontFamily="微软雅黑"
horizontalScrollPolicy="off" borderVisible="false"
dataProvider="{viewList}">
<s:columns>
<s:ArrayList>
<s:GridColumn resizable="false"
itemRenderer="Module_SchoolView.RadioButtonGridItemRenderer"/>


<s:GridColumn headerText="名称" dataField="xysj02" resizable="false"/>

<s:GridColumn headerText="地名" dataField="xysj02name" resizable="false"/>

<s:GridColumn headerText="URL" dataField="xysj04" resizable="false"/>

<s:GridColumn headerText="备注" dataField="xysj05" resizable="false"/>
</s:ArrayList>
</s:columns>
</s:DataGrid>


MXML页面

复制代码 代码如下:


<?xml version="1.0" encoding="utf-8"?>
<s:GridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<fx:Script>
<![CDATA[

//----------------------------------------------------------------------------------------------------------

override public function prepare(hasBeenRecycled:Boolean):void
{
super.prepare( hasBeenRecycled );

// We make the radio button mimic the selection status of the whole row.
const selected_items: Vector.<Object> = grid.dataGrid.selectedItems;

if( null == selected_items )
{
radio_button.selected = false;
return;
}

if( -1 != selected_items.indexOf( data ) )
radio_button.selected = true;
else
radio_button.selected = false;
}

//----------------------------------------------------------------------------------------------------------

]]>
</fx:Script>

<!--The radio button is only a visual indicator for whether the row is selected or not.
The "selected" property of the radio_button will be controlled by the "prepare" function.
The radio_button should not be allowed any user interaction. Hence disabling it.-->
<s:RadioButton
label=""
enabled="false"

horizontalCenter="0" verticalCenter="0" />

</s:GridItemRenderer>

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表