我有這樣的GridView與AutoGenerateEditButton屬性= 「真」:獲取值更新
<asp:GridView ID="myGridview" runat="server"
ShowFooter="True"
AutoGenerateDeleteButton="true" AutoGenerateEditButton="true"
AutoGenerateColumns="False" AllowSorting="True" DataKeyNames="id" DataSourceID="odsVolumeSearch" OnRowUpdating="myGridview_RowUpdating">
<Columns>
<asp:BoundField DataField="id" HeaderText="id" Visible="false" InsertVisible="False" ReadOnly="True" SortExpression="id" />
<asp:BoundField DataField="Date" HeaderText="date" SortExpression="Date" ReadOnly="True" />
<asp:BoundField DataField="Items" HeaderText="Items" SortExpression="Items" />
</Columns>
</asp:GridView>
這是我的ObjectDataSource:
<asp:ObjectDataSource ID="myOds" runat="server"
DeleteMethod="myDeleteMethod" SelectMethod="mySelectMethod"
TypeName="TheirLocation.sqlDataLayer" UpdateMethod="myUpdateMethod">
<DeleteParameters>
<asp:Parameter Name="id" Type="Int32" />
</DeleteParameters>
<SelectParameters>
<asp:Parameter Name="fromDate" Type="DateTime"/>
<asp:Parameter Name="toDate" Type="DateTime"/>
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="id" Type="Int32" />
<asp:Parameter Name="volume" Type="Int32" />
</UpdateParameters>
</asp:ObjectDataSource>
而且這爛攤子這裏是我更新的事件處理程序:
protected void gvVolumeList_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
GridViewRow row = gvVolumeList.Rows[e.RowIndex];
String debugString = ((TextBox)(row.Cells[1].Controls[0])).Text;
Response.Write("<script>alert('" + debugString + "');</script>");
}
我只是想從我的文本框中獲取值以顯示在警報上,但我只是可以t修復它。我曾嘗試過各種東西,一派瘋狂,但我不能獲取的價值
編輯
我認爲問題是,我得到從CELL,而不是文本框在細胞內的文本。仍然不知道該怎麼辦,但
代替'綁定fie ld'我更喜歡'Template field',這裏是一個使用模板字段的示例http://satindersinght.blogspot.in/2012/08/how-to-addupdate-record-using-gridview.html –