【问题标题】:Radio button as itemrenderer of datagrid column in flex单选按钮作为 flex 中 datagrid 列的 itemrenderer
【发布时间】:2014-01-08 07:21:15
【问题描述】:

我有一个数据网格,其中一列我将单选按钮设置为 itemrenderer。 我的要求是一次只能选择一个单选按钮。如果我们单击一个单选按钮,则该列中的所有其他单选按钮都应该被​​取消选择。

我的代码如下(ManagePagesPopup.mxml)

<fx:Declarations>
            <s:RadioButtonGroup id="radGrp" />
</fx:Declarations><s:DataGrid id="pageDataGrid" dataProvider="{pageDetailsAc}" >
    <s:columns>
        <s:ArrayList>
            <s:GridColumn  headerText="Select" dataField="select"  itemRenderer="components.PageSelectRadioButton" ></s:GridColumn>
            <s:GridColumn dataField="pageName" headerText="Page Template Name"></s:GridColumn>
            <s:GridColumn dataField="pageType" headerText="Page Type"></s:GridColumn>
            <s:GridColumn dataField="pageSize" headerText="Page Size"></s:GridColumn>
            <s:GridColumn dataField="order" headerText="Order" editable="true" itemRenderer="components.OrderTextInput"></s:GridColumn>
        </s:ArrayList>
    </s:columns>
</s:DataGrid>

在 PageSelectRadioButton.mxml(item renderer) 文件中我写在下面的代码

<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:Script>
    <![CDATA[       
    [Bindable]
        public var mg:ManagePagesPopup=new ManagePagesPopup();  
    ]]>
</fx:Script>

    <s:RadioButton id="selectRadio" groupName="{mg.radGrp}" />

我在哪里做错了。任何帮助。

【问题讨论】:

    标签: apache-flex datagrid radio-button itemrenderer radio-group


    【解决方案1】:

    好吧,基本上你是为每个项目渲染器分配一个不同的单选按钮组,因为你正在为每个项目渲染器实例化一个新的 ManagesPopUp。

    【讨论】:

      【解决方案2】:

      添加一个内联 itemrenderer 以使其工作如下:-

      <s:GridColumn  headerText="Select" dataField="select" >
        <s:itemRenderer>
          <fx:Component>
           <s:GridItemRenderer>
            <s:RadioButton id="selectRadio" group="{outerDocument.radGrp}" />
           </s:GridItemRenderer>
          </fx:Component>
        </s:itemRenderer>
      </s:GridColumn>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-11-09
        • 2012-01-21
        • 2012-03-16
        • 1970-01-01
        • 1970-01-01
        • 2012-05-29
        • 2011-05-02
        • 1970-01-01
        相关资源
        最近更新 更多