There are a couple of things you can try here,
The first one is to set the select last added row to false, like so:
or after you are changing the data, you can select again the first row from the current view,
or you can just set the datasource to null before starting the search and set it again once the search is done,
// search or do anything
.grid.DataSource = searchResultList;
If you have any other questions, please let me know.