2008-11-07 30 views

Trả lời

6

Bạn có thể đặt mỗi hàng của DataGrid để phù hợp dựa trên nội dung của một cột cụ thể của hàng đó bằng cách đặt thuộc tính "variableRowHeight" thành true trên DataGrid và đặt thuộc tính "wordWrap" thành true trên dataGridColumn sẽ chứa nội dung chiều cao thay đổi.

5

Tôi hoàn toàn không hiểu câu hỏi của bạn, nhưng nếu bạn đang yêu cầu làm thế nào để kích thước DataGrid với số lượng hàng trong dataProvider, bạn có thể thử:

dataGrid.rowCount = yourCollection.length; 

hoặc

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

Xa và đi những vấn đề kỳ lạ nhất tôi đã có với Flex là làm thế nào để chỉ đơn giản là làm cho Lists và DataGrids kích thước nội dung của họ (không hiển thị một thanh cuộn hoặc bất kỳ hàng trống). Tôi đã nghĩ nó sẽ hoàn toàn thẳng về phía trước ngay cả với chiều cao hàng biến đổi. Có vẻ như hầu như không ai khác có vấn đề này ?!

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

Nhiều lần xem giải pháp trên - không hoạt động. Tôi nhận được một thanh cuộn và một hàng trống thừa khi có nhiều hơn một mục trong bộ sưu tập.

+0

Tôi gặp sự cố tương tự. Lỗi rất khó chịu. Tôi sử dụng một biểu thức ràng buộc trên rowCount và không có gì xảy ra. Tôi vẫn nhận được thêm một hàng. – Laxmidi

4

Tôi gặp vấn đề tương tự, sử dụng Flex SDK 3.3. Tôi đã nhìn thấy một số báo cáo lỗi Adobe trong những năm liên quan đến điều này, nhưng các kiểm tra lỗi luôn nói rằng nó đã được giải quyết. Điều tốt nhất tôi có thể đề nghị là để thiết lập một chiều cao điểm ảnh rõ ràng về DataGrid, hoặc bạn có thể thử điều này:

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

Bart

+0

Hoạt động tuyệt vời! cảm ơn – ggkmath

0

Cảm ơn Brat cho câu trả lời của bạn, mà làm việc cho tôi (một cách). Có chỉ là một chút sửa đổi, khi chúng tôi tính toán chiều cao sử dụng trên tính toán một cuộn dọc xuất hiện, chúng tôi cũng cần phải thiết lập verticalScrollPolicy = "off" để nó không bao giờ thấy

0

Tất nhiên, tránh trong DataGrid của bạn MXML cái gì đó như height =" 100%" hoặc top = "10" đáy = "123"

3

Cảm ơn những nói:

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

- điều này thực sự làm việc cho tôi trong Flex 4. Tuy nhiên tôi muốn chỉ ra rằng theo vào tài liệu "rowCount bao gồm hàng tiêu đề", vì vậy tôi cho rằng câu trả lời phải là

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

Tuy nhiên, tôi cho rằng doco là sai vì giải pháp cũ phù hợp với tôi.

Nếu không, việc này có hữu ích không? http://www.actionscript.org/forums/showthread.php3?t=220962

+0

Dường như lỗi được cố định lại, để phản ánh những gì nó nói trong tài liệu trong flex 4.5 =) – PicoCreator

1
var rwcnt = xmllist.length();// dataprovider.length 

ADG.rowHeight = 20; 

var rht = ADG.rowHeight; 

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

đây là những gì tôi đã nhận giải pháp để kiểm soát kích thước của DataGrid tiên tiến

1

Trong Spark DataGrid bạn có thể đặt requestedRowCount đến dataProviderLength, NHƯNG với điều kiện bạn không đặt một Height cho Datagrid.

Ngoài ra, đối với nhà cung cấp dữ liệu có độ dài dưới 3, Nó sẽ luôn hiển thị 3 hàng.

Lưu ý Ngoài ra Spark cung cấp cho chúng tôi yêu cầuMaxRowCount & yêu cầuMinRowCount.

+0

Ngoài ra, variableRowHeight = "false". – ggkmath

Các vấn đề liên quan