Если вы используете MVVM, вы можете использовать DataGrid InputBindings для обработки клавиш со стрелками вверх и вниз и установить SelectedDataGridItem так, как вам нравится -
<DataGrid ItemsSource="{Binding DataGridItems}"
SelectionMode="Single"
SelectionUnit="FullRow"
SelectedItem="{Binding SelectedDataGridItem, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
<DataGrid.InputBindings>
<KeyBinding Command="{Binding Path=ChangeSelectedItemCommand}"
CommandParameter="ArrowDown"
Key="Down"/>
<KeyBinding Command="{Binding Path=ChangeSelectedItemCommand}"
CommandParameter="ArrowUp"
Key="Up"/>
</DataGrid.InputBindings>
</DataGrid>