具有可扩展节点的Flex AdvancedDataGrid:可以使alternatingItemColors在每个可扩展节点后重新开始?

时间:2010-03-08 19:38:06

标签: flex actionscript-3 mxml advanceddatagrid

说我有这个AdvancedDataGrid:

<mx:AdvancedDataGrid id="grid"
 height="384"
 width="100%"
 styleName="aStyleName"
 displayItemsExpanded="false"
 groupItemRenderer="SomeRenderer"
 draggableColumns="false"
 defaultLeafIcon="{null}"
 folderClosedIcon="{null}"
 folderOpenIcon="{null}">
 <mx:columns> 
  <!-- a bunch of AdvancedDatagridColumns -->
 </mx:columns>
</mx:AdvancedDataGrid>

的工作方式类似于树,即某些节点是可以折叠和展开的“集合”。

此网格的样式指定了交替项目颜色数组。数组长度为2,表示行在浅色和深色之间交替。

问题是,即使使用自定义groupItemRenderer,交替行也非常令人讨厌 alternate :),无论该行是可扩展节点还是数据行。现在任何可扩展行正下方的行可以是颜色,可扩展行也可以获得颜色。我的首选是明暗交替跳过可扩展行并在每行后重新启动明暗序列,但完全跳过可扩展行。

我使groupItemRenderer占用但是显示了很多列并给它一个灰色背景,但是行颜色仍然显示在项呈示器后面,即使渲染的高度设置为100%。

如果我此时没有失去所有人,有没有人对如何做到这一点有任何想法?我是否必须扩展AdvancedDataGrid并覆盖drawRowBackgrounds方法,还是有更简单的解决方案?

1 个答案:

答案 0 :(得分:0)

我的解决方案,尽管不令人满意,但是不使用交替的行颜色。我想保持这个开放,因为它仍然没有完成我想做的事情,但是有人回答了这个问题,并回答了我自己的问题,而不是回答我的问题,从而拖累了我的接受率。如果有人得到了一个好的答案,我将取消选中此答复并检查该答案。对不起,但我不知道还能做什么。