2011-09-16 188 views
0

Flex數據網格降序排列的默認行爲是所選行保持在視圖中,這意味着視圖將向下滾動以顯示所選行。我想對此進行更改,以便在進行降序排列時,veiw保持在頂部,選定的行保持與另一行不同的位置。我已經嘗試過使用此代碼的不同變體,但無法使其正常工作:Flex Datagrid排序

var index:int = new int(myDG.selectedIndex); 
var vertPos:int = myDG.grid.verticalScrollPosition; 

myDG.selectedIndex = index; 
myDG.grid.verticalScrollPosition = vertPos; 

感謝您的幫助。我剛剛開始使用Flex。

回答

0

什麼,你可以嘗試如下:

允許定義newIndex只要你想你的數據網格導航到所需的索引。

你可以嘗試這樣的事:

dgInstance.scrollToIndex(newIndex); 
dgInstance.selectedIndex = newIndex; 

的事情是,我沒有測試代碼,以便它可能需要添加:

dgInstance.validateNow(); 
+0

謝謝。這段代碼去哪裏?在sortCompareFunction?你能舉個例子嗎?在一個AdvancedDataGrid中,它似乎是第一個可以用來完成這個任務的工具,但我似乎無法讓它工作。 – tiapanda

+0

我想你可以在sortCompareFunction中添加代碼,但我相信它也可以用普通方法。我前一段時間需要一個需要我在答案中添加的那段代碼的項目。根據你的最後一句話,你現在使用的是advdg還是dg? – Radu