好吧,我想我在這裏做得不對。異常,而試圖手動排序PagedCollectionView
我使用的是PagedCollectionView映射到一個自定義類型的的ObservableCollection。我希望能夠在用戶嘗試對DataGrid列進行排序時手動對基礎集合進行排序。
我做了以下內容:
obs = new ObservableCollection<Seats>(arrSeats);
view = new PagedCollectionView(obs);
INotifyCollectionChanged sortchangeNotifier = view.SortDescriptions as INotifyCollectionChanged;
sortchangeNotifier.CollectionChanged += new NotifyCollectionChangedEventHandler(sortchangeNotifier_CollectionChanged);
grdData.ItemsSource = view;
void sortchangeNotifier_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
{
// What to do here?
}
事件處理程序只要單擊列標題被正確調用。但是,每當我嘗試修改ObservableCollection時,我都會得到以下例外情況:
刷新被延遲時,無法更改或檢查PagedCollectionView的內容或當前位置。
我希望能夠實現自己的自定義排序算法。有任何想法嗎?
謝謝!
編輯
那麼,這是特別瘋狂,但是當我在事件處理方法的try/catch塊纏上了我的密碼,更改將實際應用。有任何想法嗎 :) ?
silverlight網格沒有排序事件。 – SiN