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中的arraycollection数据过滤datagrid