我有一个运行良好的 GridView,除了一件事:当我单击编辑链接按钮时,它会出现一个文本框列表,可以根据需要编辑值。但是,当我单击更新按钮并执行((TextBox)row.Cells[2].Controls[0]).Text
(例如)时,它会返回我编辑文本框之前的值!
知道如何访问文本框的新文本吗?
嘿,你必须这样Gridview_RowUpdating
做
protected void gvSalaryDetails_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
((TextBox)gvSalaryDetails.Rows[e.RowIndex].FindControl("txtgvSalaryHeadValue")).Text;
}
和 Aspx 页面应该像这样。
<asp:TemplateField HeaderText="Amount">
<ItemTemplate>
<div class="control">
<asp:Label ID="lblgvSalaryHeadValue" runat="server" Text='<%# ((SalaryDetails)Container.DataItem).HeadValue %>'></asp:Label>
</div>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtgvSalaryHeadValue" runat="server" Text='<%# ((SalaryDetails)Container.DataItem).HeadValue %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
希望对你有帮助..