【问题标题】:flex advanceDatagrid with radiobutton issue带有单选按钮问题的 flex advancedD 数据网格
【发布时间】:2010-07-23 04:13:51
【问题描述】:

我正在使用带有分层数据的 Flex 3 的 Advanced DataGrid 我还在另一列中添加了平铺列表作为项目渲染器 在那个磁贴列表中,我添加了单选按钮作为项目渲染器 如果我更改收音机选择的值,层次树会展开 如果滚动条出现,单选按钮的值正在改变

<mx:AdvancedDataGrid contextMenu="{cm}" backgroundAlpha="0" styleName="TreeUser" dataProvider="{modelInstance._treeUserXml}" 
id="treeAdg" width="100%" height="100%" showHeaders="false" doubleClick="treeDoubleClick(event)" doubleClickEnabled="true" 
displayItemsExpanded="false" click="onItemClick(event)" borderStyle="none" rowHeight="25">
<mx:columns>
    <mx:AdvancedDataGridColumn dataField="name"/>
    <mx:AdvancedDataGridColumn id="treeItem" itemRenderer="com.Frontend.views.TreeUser.TreeStructureTileList"/>
</mx:columns>

这是添加分层数据作为数据提供者的高级数据网格

<containers:TileListEx id="tileList" width="100%" height="100%" textAlign="left"
    horizontalScrollPolicy="off" verticalScrollPolicy="off" direction="horizontal"
    dataProvider="{data.driver}" itemClick="tileItemClick(event)"
    backgroundAlpha="0" borderStyle="none" paddingLeft="0" paddingTop="0"
    useRollOver="false" rowHeight="25" itemRenderer="com.Frontend.views.TreeUser.tieListRenderer">
</containers:TileListEx>

这是我将 data.driver 添加为 dataprovider&lt;mx:RadioButton id="radio" label="{data.name}" click="checkClick(event)" width="100%"/&gt; 的磁贴列表。

如果我单击单选按钮的值会发生变化,但如果滚动会出现,则值会随机变化,因为 itemrenderer 帮助我解决了这个问题

【问题讨论】:

    标签: apache-flex flex3


    【解决方案1】:

    您面临的问题只是作为 itemRenderer 实例创建的组件可在您的 TileList 中重复使用。因此,如果假设您单击作为 List 第一项的 itemRenderer 的 RadioButton 然后向下滚动,则单击的 RadioButton(由于滚动而消失)将用作出现的项目之一的 itemRenderer。您需要做的是让您的 itemRenderer 以某种方式依赖于“数据”属性,例如向其添加“选定”属性并在 data.selected==true 时将 RadioButton 显示为选中状态。您还需要在 RadioButton 单击处理程序中将 selected 设置为适当的值。

    【讨论】:

    • 我也这样做了..还是同样的问题...您还有其他解决方案吗
    猜你喜欢
    • 1970-01-01
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多