如何在 Flex 中循环访问单选按钮 数据网格中的项目渲染器



您好,有人可以帮助在 Flex MX 数据网格中的单选按钮项目渲染器上循环吗?

我的数据网格代码如下:

<mx:DataGridColumn width="20" headerText="isDefault" dataField="IS_DEFAULT">
                            <mx:itemRenderer>
                                <fx:Component>
                                    <mx:HBox horizontalAlign="left">
                                        <fx:Script>
                                            <![CDATA[
                                                import mx.controls.Alert;
                                                import mx.controls.listClasses.ListData;

                                                protected function chk1_changeHandler(event:Event):void
                                                {
                                                } 
                                            ]]>
                                        </fx:Script>
                                        <mx:RadioButton id="chk1" selected="{data.IS_DEFAULT == 'N' ? false : true}"
                                                        groupName="{outerDocument.rbg11}" change="chk1_changeHandler(event)" horizontalCenter="0"/>
                                            </mx:HBox>
                                </fx:Component>
                            </mx:itemRenderer>
                        </mx:DataGridColumn>

Thanks for helping.

为什么不将复选框项内联呈现器的状态与数据网格的数据提供程序绑定? 您是否专门尝试通过每个复选框控件访问其他类型的功能?如果没有,我建议只将选定/未选定属性添加到数据提供程序的任何内容中,并将其绑定到内联复选框渲染器的"选定"属性,如下所示:

<mx:RadioButton id="chk1" selected="{data.selected_property}"
                                    groupName="{outerDocument.rbg11}" change="chk1_changeHandler(event)" horizontalCenter="0"/>

这样,如果要循环访问 DataGrid 控件中每个复选框的"状态",则可以在数据提供程序级别执行此操作。 您的 chk1_changeHandler(( 将切换该选定/未选择的值:

protected function chk1_changeHandler(event:Event):void{
    if(data.selected_property == true){
        data.selected_property = false;
    }else{
        data.selected_property = true;
    }
}

如果您死定在 mx (~3.x( 而不是 4.6 上,我会在这里阅读一些微妙的 flex 3 绑定细微差别: 关于绑定

最新更新