我有一個正在由客戶數據填充的AdvancedDataGrid。每個客戶有3個月產品(1,3,6),還有一個passed
字段,指定客戶是否有資格獲得任何月度產品。Flex AdvancedDataGrid排序
現在網格按字母順序排列客戶數據,這是一件好事,但它並不排序每月的產品,而不是那麼好的東西。
dataProvider看起來像這樣。 (我被出資者分組。)
{Funder:"Customer1", Product:"1 Month", Passed:"False"},
{Funder:"Customer1", Product:"3 Month", Passed:"True"},
{Funder:"Customer1", Product:"6 Month", Passed:"True"},
{Funder:"Customer2", Product:"1 Month", Passed:"False"},
{Funder:"Customer2", Product:"3 Month", Passed:"False"},
{Funder:"Customer2", Product:"6 Month", Passed:"False"}
然後導致我在網格中得到看起來是這樣的
----------------------------------------
| Funder & Products | Product Passed |
----------------------------------------
| Customer1 | |
| 6 Month | True |
| 3 Month | True |
| 1 Month | False |
| Customer2 | |
| 3 Month | False |
| 6 Month | False |
| 1 Month | False |
----------------------------------------
上越來越分類以及產品任何幫助嗎?
編輯:
下面是我用網格
<mx:AdvancedDataGrid id="myADG"
width="100%" height="100%"
initialize="gc.refresh();"
folderClosedIcon="{null}"
folderOpenIcon="{null}"
defaultLeafIcon="{null}">
<mx:dataProvider>
<mx:GroupingCollection id="gc" source="{mCustomerData}">
<mx:grouping>
<mx:Grouping>
<mx:GroupingField name="Funder"/>
</mx:Grouping>
</mx:grouping>
</mx:GroupingCollection>
</mx:dataProvider>
<mx:columns>
<mx:AdvancedDataGridColumn dataField="Product"
headerText="Funder & Products"/>
<mx:AdvancedDataGridColumn dataField="Passed"
headerText="Product Passed"/>
<mx:AdvancedDataGridColumn dataField="Passed"
headerText="Product Failed"/>
</mx:columns>
</mx:AdvancedDataGrid>
我知道網格不會爲您排序數據。事情是,數據被排序並且網格以隨機順序顯示它。我需要一種方法來以正確的方式顯示數據。謝謝你提出了sortCompareFunction,試過了,但它沒有奏效。 – 2010-07-15 13:23:06
從您的問題「網格正在整理客戶數據」。我發現很難相信網格會對您的數據做任何處理。如果您單擊其中一個標題對數據進行排序,則sortCompareFunction將僅起作用。您對於creationComplete上的數據應用排序的解決方案看起來很好。你以前沒有對這些數據進行排序嗎? – JeffryHouser 2010-07-15 13:47:37
不,我沒有應用排序之前,但數據按字母順序排序,即使它沒有排序在dataProvider中。我想這可能是按照字母順序排列dataProvider的分組? – 2010-07-16 06:35:04