我在updatepanel中有以下gridview:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="ButtonAdd" runat="server" OnClick="ButtonAdd_Click" Text="Novo Artigo" />
<asp:GridView ID="Dados" runat="server" AutoGenerateColumns="False" CssClass="Grid">
<Columns>
<asp:TemplateField HeaderText="Artigo">
<ItemTemplate>
<asp:TextBox ID="Artigo" runat="server"></asp:TextBox>
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
TargetControlID="Artigo"
PopupControlID="PanelArtigos"
>
</asp:ModalPopupExtender>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Descrição">
<ItemTemplate>
<asp:TextBox ID="Descricao" runat="server" Width="300px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="IVA">
<ItemTemplate>
<asp:TextBox ID="IVA" runat="server" Width="40px" Enabled="false"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Pr. Unit.">
<ItemTemplate>
<asp:TextBox ID="PU" runat="server" Width="50px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="% Desc.">
<ItemTemplate>
<asp:TextBox ID="Desconto" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="UN">
<ItemTemplate>
<asp:TextBox ID="UN" runat="server" Width="50px" Enabled="false"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Quant.">
<ItemTemplate>
<asp:TextBox ID="Quantidade" runat="server" Width="50px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total Liquido">
<ItemTemplate>
<asp:TextBox ID="TotalLiquido" runat="server" Enabled="false"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="RemoveArtigo" runat="server" OnClick="RemoveArtigo_Click">Remover
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle Font-Size="Small" />
<RowStyle Font-Size="Small" CssClass="grid" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
如您所见,我有一些文本框。
当我更改文本框中的值(例如,Desconto值)并保留该文本框时,我希望使用文本框中的新值来更新我要更新的行。它就像一个TextChanged或onBlur,但在更新面板中它不起作用。
最好的方法是什么?
我正在使用VB.NET。
谢谢。
修改
当添加OnTextChanged =“Desconto_TextChanged”时,我收到此编译错误:
编译错误说明:An 编译期间发生错误 为此提供服务所需的资源 请求。请查看以下内容 具体的错误细节和修改你的 适当的源代码。
编译器错误消息:BC30456: 'Desconto_TextChanged'不是会员 'ASP.index_aspx'。
来源错误:
204行:
205行:
第206行:
207行:
208行:
源文件: C:\的Inetpub \ wwwroot的\ Facturas \ Facturas \的Index.aspx 行:206
答案 0 :(得分:1)
TextBox
控件不会启动回发。您可以为每个文本框控件设置AutoPostBack
到true
。
答案 1 :(得分:1)
我相信您需要的活动是TextChanged
。就像lincolnk所说,你需要AutoPostBack
设置为True
,文本框才能触发回发。然后,在事件处理程序内部,调用Dados.DataBind()
重新加载GridView的数据。