Ответ 1
В событии RowdataBound вы можете получить значение ячейки из gridview, используя следующий код:
[ 1]//получение имени пользователя rfom определенной строки
string servicename = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "Name"));
В событии RowUpdating вы можете проверить, является ли ячейка пустой или нет, используя следующий код:
string servicename = grdvw_showdetails.DataKeys[row.RowIndex][1].ToString();
Выше кода использует Datakey в событии обновления строки. если вы не хотите использовать datakey, код для проверки конкретной ячейки пуст или нет
TextBox txtaname = (TextBox)row.FindControl("txt_updname");
if(txtaname.text != null)
EDIT:
Этот ответ превосходный. Однако я хотел бы добавить немного комментария. При проверке данных ячеек строки в событии RowDatabound
свойство DataItem
ItemArray не доступно напрямую. Поэтому, когда мы делаем что-то подобное, это бессмысленно: string val = e.Row.Cells[2].Text.ToString();
и выдает ошибку.
То, где приходит первая строка этого ответа. [ 1]
Следующий экран показывает дерево/иерархию свойств Row, когда вы выполняете часы в режиме отладки.