Пожалуйста, помогите с проблемой viewgrid onrowupdating
У меня возникла проблема с извлечением значений из моего GridView в методе OnRowUpdating. Вот мой управления gridview1:
<asp:gridview id="GridView1" runat="server" allowpaging="True" ="" allowsorting="True" autogenerateeditbutton="True" autogeneratedeletebutton="True" alternatingrowstyle-backcolor="#99CCFF" datasourceid="LinqDataSource1" autogeneratecolumns="False" datakeynames="Month_End_Date" onrowdatabound="OnRowDataBound" onrowupdating="OnRowUpdating"> <alternatingrowstyle backcolor="#99CCFF"> <columns> <asp:boundfield datafield="Month_End_Date" headertext="Month_End_Date" ="" readonly="True" sortexpression="Month_End_Date"> <asp:boundfield datafield="User_Id" headertext="User_Id" readonly="True" ="" sortexpression="User_Id"> <asp:boundfield datafield="Lock_Modified" headertext="Lock_Modified" ="" readonly="True" sortexpression="Lock_Modified"> <asp:boundfield datafield="Lock" headertext="Lock" readonly="True" ="" sortexpression="Lock"> <asp:templatefield headertext="LockYes"> <itemtemplate> <asp:label id="lblLockYes" runat="server" text="<%# Bind("Lock") %>"> <edititemtemplate> <asp:label id="lblLockYes" runat="server" text="<%# Bind("Lock")%>" visible="true"> <asp:dropdownlist ="" id="ddlLockYes" runat="server" appenddatabounditems="true" datatextfield="Lock" datavaluefield="Lock">
Вот мой код-зад. Мне нужно вытащить значения для Month_End_Date и Lock.
Я получаю это сообщение об ошибке.
Unable to cast object of type 'System.Web.UI.WebControls.DataControlLinkButton' to type 'System.Web.UI.WebControls.TextBox'.
protected void OnRowUpdating(object sender, GridViewUpdateEventArgs e) { DateTime monthend = DateTime.Parse(((TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text); string drop = dropDownListSelItem; //int age = int.Parse(((TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text); //SqlConnection Conn = new SqlConnection(MyGlobals.ConnString); //Conn.Open(); //SqlCommand cmd = new SqlCommand("UPDATE ct_lock SET lock=@drop where month_end_date=@monthend ", Conn); //cmd.Parameters.Add(new SqlParameter("@monthend", monthend)); //cmd.Parameters.Add(new SqlParameter("@drop", drop)); //cmd.Parameters.Add(new SqlParameter("@age", age)); //Conn.Open(); //cmd.ExecuteNonQuery(); //Conn.Close(); //GridView1.EditIndex = -1; //fill(); GridView1.EditIndex = -1; GridView1.DataBind(); }
Что я уже пробовал:
Мне нужно вытащить значения для Month_End_Date и Lock.
Я получаю это сообщение об ошибке. Не удается привести объект типа 'System.Веб.Пользовательского интерфейса.WebControls.Система DataControlLinkButton' в тип '.Веб.Пользовательского интерфейса.WebControls.Текстовое поле".