flex datagrid - 使网格高度动态和包含它的组件

Posted

技术标签:

【中文标题】flex datagrid - 使网格高度动态和包含它的组件【英文标题】:flex datagrid - making grid height dynamic and component that contains it 【发布时间】:2010-10-27 02:14:51 【问题描述】:

嗨,

我想构建一个具有动态高度值的数据网格,因为行数总是不同的。我还想将高度传达回保持它的组件,以便它也随着数据网格一起增长。任何人都可以帮助我找到创建这样一个动态数据网格的最佳方法。

谢谢

【问题讨论】:

【参考方案1】:

DataGrid 的高度由其rowCount 属性控制。如果您希望 DataGrid 始终足够高以显示所有包含的元素(例如,将其包装在 Scroller 中以处理 DataGrid 对于可用空间而言太大的情况,而不是让 DataGrid 本身滚动),只需将其绑定到数据源的适当属性:

<mx:DataGrid dataProvider="myData" rowCount="myData.length"/>
<fx:Script>
    <![CDATA[
        import mx.collections.ArrayCollection;

        protected var myData:ArrayCollection;
    ]]>
</fx:Script>

【讨论】:

【参考方案2】:

你能说得更具体点吗?你是说你不希望数据网格滚动吗?如果行数超过屏幕上可以看到的行数怎么办? -- 一旦你回答了这些问题,我可以将其编辑为更具体的答案。

至于从您的自定义 DataGrid 实现到父对象的通信,您要做的是广播一个指示高度应该改变的事件,并附加一些值 - 行数或新高度,可能 - - 到那个事件。

在学习了 Flex 中事件广播的基础知识后,我意识到它们过于复杂,并学习了 Swiz framework,这使得事件广播和处理尽可能简单(以及其他一些很棒的东西)。

【讨论】:

嘿亚当,我之前问过这个问题但没有登录。我只是希望数据网格根据行增长/缩小。如果行数超过屏幕上可以看到的行数,那么我猜滚动是最好的选择?谢谢

以上是关于flex datagrid - 使网格高度动态和包含它的组件的主要内容,如果未能解决你的问题,请参考以下文章

Flex 中的动态数据网格列

Flex - 垂直对齐 Datagrid 标题文本的问题

根据flex中的arraycollection数据过滤datagrid

Flex Datagrid 列对齐数字

Bootstrap 网格系统 - 如何使两列高度相等? [复制]

Flex3 Datagrid:标志上的自定义行