private void MoveUpAndDown(int direction) { IsBusy = true; int index = PdfFiles.IndexOf(SelectedFile); App.Current.Dispatcher.Invoke(delegate { PdfFiles.Move(index, index + direction); }); //Needed to trigger Selection Changed event In datagrid SelectedFile = null; SelectedFile = PdfFiles[index + direction]; IsBusy = false; }