【发布时间】:2010-09-21 05:34:33
【问题描述】:
在 adobe Flex 数据网格中,高度等同于固定高度。我想让数据网格高度依赖于数据。
【问题讨论】:
标签: apache-flex datagrid flex3
在 adobe Flex 数据网格中,高度等同于固定高度。我想让数据网格高度依赖于数据。
【问题讨论】:
标签: apache-flex datagrid flex3
您可以通过将数据网格上的“variableRowHeight”属性设置为 true 并将 dataGridColumn 上的“wordWrap”属性设置为 true 来设置数据网格的每一行以适应该行特定列的内容,这将包含可变高度内容。
【讨论】:
我不太明白你的问题,但如果你问如何将 DataGrid 的大小调整为 dataProvider 中的行数,你可以尝试:
dataGrid.rowCount = yourCollection.length;
或
<mx:DataGrid rowCount="{yourCollection.length}"/>
【讨论】:
我在使用 Flex SDK 3.3 时遇到了同样的问题。多年来,我已经看到了几个关于此的 Adobe 错误报告,但错误检查员总是说它已经解决。我可以建议的最好的事情是在数据网格上设置一个明确的像素高度,或者你可以试试这个:
dg.height = dg.measureHeightOfItems(0, dgDataProvider.length) + dg.headerHeight;
巴特
【讨论】:
感谢那些说:
<mx:DataGrid rowCount="{yourCollection.length}"/>
- 这实际上在 Flex 4 中对我有用。但是我想指出,根据文档“rowCount 包括标题行”,所以我想答案应该是
<mx:DataGrid rowCount="{yourCollection.length + 1}"/>
尽管如此,我认为 doco 是错误的,因为以前的解决方案对我有用。
否则,这有帮助吗? http://www.actionscript.org/forums/showthread.php3?t=220962
【讨论】:
我在使用 Flex 时遇到的最奇怪的问题是如何简单地将 Lists 和 DataGrids 调整到其内容的大小(不显示滚动条或任何空行)。我原以为即使行高可变,它也会完全直截了当。似乎几乎没有其他人有这个问题?!
<mx:DataGrid rowCount="{yourCollection.length}"/>
反复查看上述解决方案 - 这不起作用。当集合中有多个项目时,我会看到一个滚动条和一个额外的空白行。
【讨论】:
var rwcnt = xmllist.length();// dataprovider.length
ADG.rowHeight = 20;
var rht = ADG.rowHeight;
ADG.height = (rwcnt * rht) + 26;
这就是我得到的控制高级数据网格大小的解决方案
【讨论】:
在 Spark DataGrid 中,您可以将 requestedRowCount 设置为 dataProviderLength,但前提是您不要为 Datagrid 设置高度。
另外,对于长度小于 3 的 dataProvider,它总是显示 3 行。
请注意,Spark 还为我们提供了 requestedMaxRowCount 和 requestedMinRowCount。
【讨论】:
当然,避免在你的数据网格 MXML 中使用 height="100%" 或 top="10" bottom="123"
【讨论】:
感谢小子的回答,这对我有用(在某种程度上)。只是稍作修改,当我们使用上面的计算计算高度时出现垂直滚动,我们还需要设置verticalScrollPolicy = "off"使其永远不显示
【讨论】: