gridview里的编辑功能o怎么实现--自己写了点可是。。。。
代码如下:protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;//设置编辑索引
this.getbinder();
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
OleDbConnection conn;
conn = DB.DBconntionadmin();
conn.Open();
string ID = this.GridView1.DataKeys[e.RowIndex].Value.ToString();
GridViewRow row = this.GridView1.Rows[e.RowIndex]; //定义更新行对象
string sql3 = "update admin set username='" + ((TextBox)(row.Cells[1].Controls[0])).Text.ToString() + "' and userpwd='" + ((TextBox)(row.Cells[1].Controls[2])).Text.ToString() + "' and popedom='" + ((TextBox)(row.Cells[1].Controls[3])).Text.ToString() + "' where id=" + ID;
OleDbCommand com = new OleDbCommand(sql3,conn);
com.ExecuteNonQuery();
GridView1.EditIndex = -1;
conn.Close();
getbinder();}
当点击编辑的时候
当前行并不显示编辑状态
如果点击更新显示错误:
无法将类型为“System.Web.UI.DataBoundLiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.InvalidCastException: 无法将类型为“System.Web.UI.DataBoundLiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。
是怎么会是啊?