У меня есть приложение ASPX, которое отображает 3 объекта ASP: gridview. Я выбрал определенные столбцы из таблицы SQLite для отображения в каждом gridview на основе значения в этих столбцах. У меня проблема с одним gridview. Это gridview вытягивает 6 столбцов из таблицы и отображает их вместе с 2 ButtonFields и 1 Templatefield с элементом управления texbox. Одна из кнопок должна вставлять текст из текстового поля (введенного пользователем) в таблицу. Затем приложение обновляет gridview, и вставленные данные должны отображаться в столбце.Обновление sql Данные из ASP: Текстовое поле Gridview
Я использую следующие для вставки данных в таблицу:
protected void gvApproved_RowCommand(object sender, GridViewCommandEventArgs e)
{
int rowIndex = Convert.ToInt32(e.CommandArgument);
GridViewRow row = gvApproved.Rows[rowIndex];
string name = row.Cells[0].Text;
string column = "";
string value = "";
switch (e.CommandName)
{
case "Close":
column = "closed";
value = "yes";
break;
case "Score":
column = "score";
value = row.Cells[8].Text;
break;
}
SQL_Helper.Update_Row(rowIndex, column, value, name);
Refresh_All_Grids();
}
Команда обновления строки, в случае, если кому-то интересно:
public static void Update_Row(int rowIndex, string updateField, string updateString, string updateName)
{
string query = "UPDATE applications SET '" + updateField + "' = '" + updateString + "' WHERE name = '" + updateName + "';";
Query_Table(query);
}
Когда я установил линию value = row.Cells[8].Text;
в value = row.Cells[8].ToString()
, он будет вставлять 'System.Web.UI.WebControls.DataControlFieldCell'
в таблицу, поэтому я знаю, что он вытаскивает из правого столбца, но когда я оставляю его, как написано выше, он вставляет пустую строку. Невозможно ли вставить из текстового поля gridview? Если да, то что мне нужно изменить, чтобы заставить его работать?
'row.Cells []. Value' не существует как действительный член класса, к сожалению. –
@RobertSpears Да, я отредактировал свой ответ, чтобы объяснить это, проверьте его снова очень быстро. Думал, что вы используете DataGridViewRow, но используете GridViewRow. –