0

我的数据网格的 dataProvider 是一个有 2 列的 arrayCollection。arrayCollection 的第一列包含 true 或 false(以便选中复选框),另一列包含标签,这意味着 arraycollection 不包含要在每个复选框上显示的实际字符串。需要使用的标签将从 XML 文件中获取标签。所以标签将来自一个 XML 文件。

XML 文件是这样的:

<tags>
 <tags1>CheckBox Label 1</tags1>
 <tags2>CheckBox Label 2</tags2>
 <tags3>CheckBox Label 3</tags3>
</tags>

因此,相信我需要在 DatagridColumn 上使用“labelFunction”属性。这是要使用的方式,以便我可以在数据网格中的每个复选框上显示标签吗?

我的数据网格的代码是这样的:

<mx:DataGrid id="myGrid" dataProvider ="myDP" showHeaders="false" headerHeight="0">
                    <mx:columns>

                        <mx:DataGridColumn headerText="" dataField="IS_ACCESSIBLE">
                            <mx:itemRenderer>
                                <fx:Component>
                                    <mx:HBox horizontalAlign="left">
                                        <s:CheckBox id="mycheckBox"/>
                                    </mx:HBox>
                                </fx:Component>
                            </mx:itemRenderer>
                        </mx:DataGridColumn>

                    </mx:columns>
                </mx:DataGrid>

谁能帮我解决这个问题?

谢谢

4

1 回答 1

0

我已经能够这样设置复选框的标签属性:

标签=“{outerDocument.myXML.tags[data.tags]}”

使用实际上来自datagrid的dataProvider的[]和“data.tags”解决了这个问题。这使得变量的最后一部分是动态的。

于 2012-10-09T12:24:37.337 回答