Предполагая одну ячейку на столбец, это должно помочь:
string cellValue = GridView1.Rows[4].Cells[1].Text;
Это даст вам значение столбца 2 в строке 5.
В зависимости от того, как строится строка (если, например, один столбец имеет DropDownList или какой-либо другой такой элемент управления), возможно, вам лучше выполнить FindControl(controlID)
.
ОБНОВЛЕНИЕ
Скажем, у вас есть DropDownList
во 2-м столбце с ID = "ddlMyDropDown":
DropDownList ddl = (DropDownList)GridView1.Rows[4].FindControl("ddlMyDropDown");
В каком событии вводится код, зависит от того, почему вы пытаетесь найти значение.Если вы можете привести пример того, когда / почему вам нужно получить значение, мы можем сообщить вам, в каком событии оно должно происходить.
ОБНОВЛЕНИЕ 2
Предполагая, что в строке есть кнопка, обработайте событие RowCommand
:
protected void GridVie1_RowCommand(object sender, GridViewCommandEventArgs e)
{
rowIndex = Convert.ToInt32(e.CommandArgument);
DropDownList ddl = (DropDownList)GridView1.Rows[rowIndex].Cells[1].FindControl("ddlMyDropDown");
// Do something
}
Однако будьте осторожны, поскольку RowCommand запускается при каждом нажатии кнопки в строке, поэтому вынеобходимо убедиться, какая кнопка была нажата.Вы можете использовать e.CommandName
, чтобы получить CommandName кнопки, если вы ее установили, но имейте в виду, что есть некоторые предопределенные имена.
См. Событие GridView.RowCommand для получения дополнительной информации.
Если вы можете обновить свой вопрос, добавив некоторую дополнительную информацию (например, зачем вам нужно получить значение и какое взаимодействие с GridView запустит этот процесс, например, при нажатии кнопки), можно дать более точный ответ.
Я почти закончил на ночь, но завтра проверю эту ветку.