【发布时间】:2012-09-13 16:54:53
【问题描述】:
为什么我无法访问 OnTextChanged 事件?我已经在文本框中添加了 AutoPostBack="true"。已尝试调试但仍未触发。
以下是示例代码:
.ASPX 代码
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:ListView ID="ListView1" runat="server">
<ItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" OnTextChanged="TextBox1_TextChanged" AutoPostBack="true"></asp:TextBox>
</ItemTemplate>
</asp:ListView>
</ContentTemplate>
</asp:UpdatePanel>
.VB 代码
Protected Sub TextBox1_TextChanged(sender As Object, e As EventArgs)
Dim TextBox1 As TextBox = DirectCast(sender, TextBox)
Label1.Text = TextBox1.Text
End Sub
我在这里缺少什么?
已解决
我在页面加载中绑定数据源。更改为 OnPreRender 后,它的工作原理!
【问题讨论】:
-
该代码应该可以工作。您是否尝试在 TextBox1_TextChanged 中设置一个断点并进行调试以查看它是否停在那里?
-
是的,设置了一个断点,但调试器没有打到那里
-
您的调试器是否在其他断点处停止?页面加载后是否有 javascript 错误?
-
@RayCheng 在页面加载时设置断点,自动回发文本框后,调试器仍然没有点击 TextBox1_TextChanged。未检测到 javascript 错误
-
这很奇怪,但是你的代码和概念很好,所以我建议你创建一个新的简单项目,然后一点一点地添加你的其他代码,看看哪一个会破坏它。
标签: asp.net vb.net listview .net-4.0 updatepanel