我正在使用Flex 3的Advanced DataGrid和分层数据 我还将瓷砖列表添加为另一列中的项目渲染器 在该tile列表中,我将radiobutton添加为项呈示器 如果我改变无线电选择值,分层树应该扩展 如果滚动条将出现,单选按钮值正在改变
<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作为数据提供者<mx:RadioButton id="radio" label="{data.name}" click="checkClick(event)" width="100%"/>
如果我点击它的单选按钮值,但是如果滚动将会出现,因为itemrenderer帮助我解决这个问题,因此值会随机变化
答案 0 :(得分:0)
您遇到的问题仅仅是作为itemRenderer实例创建的组件可以在您的TileList中重复使用。因此,如果我们说你单击RadioButton是List的第一项的itemRenderer,然后你向下滚动,点击的RadioButton(由于滚动而消失)将被用作出现的一个项目的itemRenderer。你要做的是让你的itemRenderer以某种方式依赖于'data'属性,比如为它添加'selected'属性,如果data.selected == true则显示RadioButton。您还需要在RadioButton单击处理程序中将所选值设置为适当的值。