6

在 adobe Flex 数据网格中,高度等同于固定高度。我想让数据网格高度依赖于数据。

4

9 回答 9

6

您可以通过将数据网格上的“variableRowHeight”属性设置为 true 并将包含变量的 dataGridColumn 上的“wordWrap”属性设置为 true 来设置数据网格的每一行以适应该行特定列的内容高度内容。

于 2008-12-27T21:10:22.310 回答
5

我不太明白你的问题,但如果你问如何将 DataGrid 调整为 dataProvider 中的行数,你可以尝试:

dataGrid.rowCount = yourCollection.length;

或者

<mx:DataGrid rowCount="{yourCollection.length}"/>
于 2009-01-01T06:20:46.083 回答
4

我遇到了同样的问题,使用 Flex SDK 3.3。多年来,我已经看到了几个关于此的 Adob​​e 错误报告,但错误检查员总是说它已经解决。我可以建议的最好的事情是在数据网格上设置一个明确的像素高度,或者你可以试试这个:

dg.height = dg.measureHeightOfItems(0, dgDataProvider.length) + dg.headerHeight;

巴特

于 2009-08-06T17:08:18.313 回答
3

感谢那些说:

<mx:DataGrid rowCount="{yourCollection.length}"/>

- 这实际上在 Flex 4 中对我有用。但是我想指出,根据文档“rowCount 包括标题行”,所以我想答案应该是

<mx:DataGrid rowCount="{yourCollection.length + 1}"/>

尽管如此,我认为 doco 是错误的,因为以前的解决方案对我有用。

否则,这有帮助吗?http://www.actionscript.org/forums/showthread.php3?t=220962

于 2011-01-31T10:06:27.193 回答
1
var rwcnt = xmllist.length();// dataprovider.length

ADG.rowHeight = 20;

var rht = ADG.rowHeight;

ADG.height = (rwcnt * rht) + 26;

这就是我控制高级数据网格大小的解决方案

于 2011-06-21T06:58:02.573 回答
1

毫无疑问,我在 Flex 中遇到的最奇怪的问题是如何简单地将 Lists 和 DataGrids 的大小设置为它们的内容(不显示滚动条或任何空行)。我原以为即使行高可变,它也会完全直截了当。似乎几乎没有其他人有这个问题?!

<mx:DataGrid rowCount="{yourCollection.length}"/>

反复看到上述解决方案 - 这是行不通的。当集合中有多个项目时,我会得到一个滚动条和一个额外的空白行。

于 2009-05-21T01:26:00.487 回答
1

在 Spark DataGrid 中,您可以将requestedRowCount设置为dataProviderLength,但前提是您不为 Datagrid 设置高度。

此外,对于长度小于 3 的 dataProvider,它将始终显示 3 行。

注意 Spark 还为我们提供了 requestedMaxRowCount 和 requestedMinRowCount。

于 2011-11-01T19:30:35.940 回答
0

谢谢小子的回答,这对我有用(在某种程度上)。只是稍作修改,当我们用上面的计算计算高度时出现一个垂直滚动,我们还需要设置verticalScrollPolicy = "off"它永远不显示

于 2009-10-27T13:23:45.267 回答
0

当然,避免在您的数据网格 MXML 中使用 height="100%" 或 top="10" bottom="123"

于 2010-01-13T16:45:48.887 回答