在page_load事件中把绑定gridview的datasource的操作写在
if(!this.ispostback)里面应该就可以了
肯定不是this.gridview1.rows[e.rowindex].cells[10].text这样的取值,那是个textbox,要从textbox中取值
是这样的
(gridview1.rows[e.rowindex].cells[10].controls[0]
as
textbox).text
你都改成这样试试吧
看这个报错就知道是怎么回事了:
无法将类型为“System.Web.UI.WebControls.DataControlLinkButton”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。
你的Cells[1]列对应的列不是TextBox。而是LinkButton。
这样应该可以了:((LinkButton)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();
注意:Cells是从0开始的。
转换成模板列试试
<%#Eval("StartTime")
%>
cs中:
string
text=
(gvTyppeNotice.Rows[e.RowIndex].FindControl("txtStartTime")
as
TextBox).Text.Trim();
我是这样做的可以实现