Hi Zilvinas,
The way I would do it is to register a KeyDown event handler on the DataGridView, setting DataGridView.KeyFilter = KeyEnter (to not add too much events being fired) and that should be it.
The only drawback I see is that we have a minor problem regarding flagging to the DataGridView that we have allready processed the keycode, as you can see in this issue I just opened here.
You can use the attached sample application(s) to see how I did this. What happens is that after the MessageBox is shown, the DataGridView still advances to the next row. You might be able to work around it by handling setting the CurrentCell afterwards, but I did not test that.
Hope this helps,
Palli