adobe Flex datagrid の高さは、高さを固定するのと同じです。データグリッドの高さをデータに依存させたい。
9 に答える
データグリッドで「variableRowHeight」属性を true に設定し、変数を含む dataGridColumn で「wordWrap」属性を true に設定することにより、その行の特定の列の内容に基づいてデータグリッドの各行を設定できます。高さの内容。
私はあなたの質問をよく理解していませんが、DataGrid のサイズを dataProvider の行数に合わせる方法を尋ねている場合は、次を試すことができます。
dataGrid.rowCount = yourCollection.length;
また
<mx:DataGrid rowCount="{yourCollection.length}"/>
Flex SDK 3.3 を使用しても同じ問題が発生します。これに関して、長年にわたってアドビのバグレポートをいくつか見てきましたが、バグチェッカーは常に解決済みと言っています。私が提案できる最善のことは、データグリッドに明示的なピクセルの高さを設定することです。または、これを試すことができます。
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
var rwcnt = xmllist.length();// dataprovider.length
ADG.rowHeight = 20;
var rht = ADG.rowHeight;
ADG.height = (rwcnt * rht) + 26;
これは、高度なデータグリッドのサイズを制御するためのソリューションです
私がFlexで経験した最も奇妙な問題は、リストとデータグリッドのサイズをコンテンツに合わせて単純に作成する方法です(スクロールバーや空の行を表示しません)。行の高さが可変であっても、まったく簡単だと思っていたでしょう。この問題を抱えている人は他にほとんどいないようです?!
<mx:DataGrid rowCount="{yourCollection.length}"/>
上記の解決策を繰り返し見てください - これはうまくいきません。コレクションに複数の項目がある場合、スクロール バーと余分な空白行が表示されます。
Spark DataGrid では、requestedRowCountをdataProviderLengthに設定できますが、条件によっては、Datagrid の高さを設定しないでください。
また、長さが 3 未満の dataProvider の場合、常に 3 行が表示されます。
注 また、Spark は requestedMaxRowCount と requestedMinRowCount を提供します。
もちろん、データグリッドMXMLでは、height = "100%"やtop = "10" bottom="123"のようなものは避けてください。
あなたの答えに感謝します。ちょっとした修正ですが、上記の計算で高さを計算すると縦スクロールが表示されるverticalScrollPolicy = "off"
ので、表示されないように設定する必要があります