Если вы хотите, чтобы ваша сетка данных и ваша коллекция были синхронизированы, вы должны установить IsSynchronizedWithCurrentItem = true для вашей сетки данных.Ваша коллекция должна иметь тип ICollectionView или BindingListCollectionView.Вы можете достичь этого с помощью
this.view = CollectionViewSource.GetDefaultView(this.mysourcecollection)
, если вы сделаете это, выбранные вами элементы всегда синхронизируются.И вы можете использовать методы MoveTo вашего ICollectionView для пошагового просмотра ваших элементов.
если у вас есть дополнительные вопросы, просто оставьте несколько комментариев
РЕДАКТИРОВАТЬ:
, если вы используетеdatatables в качестве источника коллекций просто создают свойство типа BindingListCollectionView.
public BindingListCollectionView MyView
{ get;set;}
после инициализации вашей базы данных init BindingListCollectionView следующим образом:
this.MyView = (BindingListCollectionView )CollectionViewSource.GetDefaultView(this.mydatatable);
, затем просто используйте это представление в качестве ItemsSource для вашей таблицы данных
<DataGrid ItemsSource="{Binding MyView}" IsSynchronizedWithCurrentItem="true" />
Теперь вы можете позвонить:
this.MyView.MoveCurrentToFirst();
this.MyView.MoveCurrentToLast();
this.MyView.MoveCurrentToNext();
this.MyView.MoveCurrentToPrevious();
//and some other