在Flex 3中覆盖AdvancedDataGrid上的文本

时间:2011-04-20 20:09:00

标签: flex flex3 advanceddatagrid

当尝试从数据调用中返回没有结果时,我试图将标签覆盖到AdvancedDataGrid上。

这是我想要完成的http://i.stack.imgur.com/6Djga.png

的模型

我尝试按照上一个回答:Drawing an overlay in custom flex component,但这对我不起作用,因为AdvancedDataGrid不是Container(因此没有rawChildren属性)。

我宁愿不要乱用数据提供程序,因为这个表将在许多位置使用,它们将有不同的列和labelFields。

欢迎任何建议。

2 个答案:

答案 0 :(得分:2)

快速举例说明Flextras提到的内容:

<s:Group>
  <mx:DataGrid dataProvider="{myDataProvider}">
    <mx:columns>
      <mx:DataGridColumn dataField="test1" />
      <mx:DataGridColumn dataField="test2" />
      <mx:DataGridColumn dataField="test3" />
      <mx:DataGridColumn dataField="test4" />
    </mx:columns>
  </mx:DataGrid>

  <s:Label text="Overlay text here" visible="{myDataProvider.length == 0}" x="10" y="35" />
</s:Group>

答案 1 :(得分:0)

将AdvancedDataGrid与标签叠加层一起放在容器中。将标签放在DataGrid的顶部;并根据dataProvider的长度更改其可见性。