0
我正在嘗試使用從GridView行中獲取的值在DataTable中添加一個新行。下面是我使用的代碼:無法在DataTable中添加一行
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Save")
{
DataTable dt = new DataTable();
dt = (DataTable)ViewState["CurrentStuDt"];
DataRow dr = null;
dr = dt.NewRow();
dr["ID"] = Convert.ToInt32(gv.FooterRow.FindControl("txtInId"));
dr["Name"] = gv.FooterRow.FindControl("txtIName");
dr["Class"] = gv.FooterRow.FindControl("txtIClass");
dr["Section"] = gv.FooterRow.FindControl("txtISec");
dt.Rows.Add(dr);
ViewState["CurrentStuDt"] = dt;
gv.DataSource = dt;
gv.DataBind();
}
}
,但我得到以下錯誤:
Unable to cast object of type 'System.Web.UI.WebControls.TextBox' to type 'System.IConvertible'.
上線
dr["ID"] = Convert.ToInt32(gv.FooterRow.FindControl("txtInId"));
快速和早期反應感激.. ...
我得到「文本框」的錯誤是「System.Web.UI.WebControls.TextBox」和「System.Windows.Forms.TextBox」因爲我之間不明確的引用使用'System.Windows.Forms'命名空間 –
嘗試添加命名空間與控制像System.Windows.Forms.TextBox myText =(System.Windows.Forms.TextBox)gv.FooterRow.FindControl(「txtInId」); – Paritosh