2016-05-30 50 views
0
<asp:GridView Width="300px" RowStyle-Height="20px" HeaderStyle-Height="25px" DataKeyNames="Id" ID="bankAccounts_List" CssClass="table" runat="server" AutoGenerateColumns="false" > 
<Columns> 
<asp:TemplateField HeaderText="Sorting Handle" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" > 
<ItemTemplate> 
<span class="handle"><img src="../Images/sortingHandler.jpg" height="10" /></span> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Account Number">            
<ItemTemplate> 
<asp:TextBox ID="grd_txtbankAccountNumber" Width="150" onblur="return OnBlurGridTextbox(this);" BorderStyle="None" BackColor="White" style="text-align:left;" runat="server" Text='<%# Eval("AccountNo") %>'></asp:TextBox> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Priority" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" > 
<ItemTemplate> 
<asp:TextBox ID="grd_txtPriority" Width="100" BorderStyle="None" BackColor="White" runat="server" style="text-align:center"></asp:TextBox> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Edit" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" > 
<ItemTemplate> 
<asp:LinkButton runat="server" ID="grd_linkbutton" OnClientClick="return EditGridButton(this)">Edit</asp:LinkButton> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Id" > 
<HeaderStyle CssClass="hiddencol" /> 
<ItemStyle CssClass="hiddencol" /> 
<ItemTemplate> 
<asp:Label ID="grd_lblId" runat="server" Text='<%# Bind("Id") %>'></asp:Label> 
</ItemTemplate> 
</asp:TemplateField> 
</Columns>          
</asp:GridView> 

<asp:Button ID="btnSaveBankInformation" runat="server" Text="<%$Resources:Strings,save%>" 
      OnClick="btnSaveBankInformation_Click" /> 

protected void btnSaveBankInformation_Click(object sender, EventArgs e) 
{ 
TextBox txtBankAccountNumber = bankAccounts_List.Rows[i].Cells[GetColumnIndexByName(bankAccounts_List.Rows[i], "Account Number")].FindControl("grd_txtbankAccountNumber") as TextBox; 
} 

以往我在任何文本框的变化是什么,在保存按钮,我总是很旧的绑定文本框的值不是我刚刚进入新的价值。 请帮助我。是的我没有绑定GridBack上的回发再次使用!IsPostBackASP:GridView的文本框旧值回发

+0

附注:你不需要在单元格上使用FindControl。使用'bankAccounts_List.Rows [i] .FindControl(“grd_txtbankAccountNumber”)'就足够了,因为这行是'NamingContainer'。 –

+0

什么是“OnBlurGridTextbox”?无论如何,即使你声称使用'!IsPostBack',我们也想看到它;} –

+0

你是否在做这个'if(!IsPostBack) { }' @TimSchmelter表示 – KhawajaAtteeq

回答

0
if (!IsPostBack) //Bind grid only when IsPostBack is false 
{ 
    grd.DataSource = //data source ; 
    grd.DataBind(); // bind data 
} 
+0

_“是的,我没有绑定的GridView上的PostBack再次使用!IsPostBack”_ –