Лучший способ - это указать свой идентификатор как DataKey в разметке GridView:
DataKeyNames="MessageId"
Тогда в своем коде вы можете ссылаться на него:
if(gvInbox.SelectedIndex > -1)
MessageId = (int) gvInbox.DataKeys[gvInbox.SelectedIndex].Value;
Имейте в виду, чтоDataTable не будет там на обратной передаче.Таким образом, чтобы получить данные «из» ячейки GridView, которая не является ключом DataKey, вы видите код, подобный следующему:
gvInbox.Rows[gvInbox.SelectedIndex].Cells[4].Text