У меня есть следующая ситуация: у меня есть текстовое поле внутри панели обновления ajax. Там, где пользователь вводит текстовое поле, я должен отображать сообщение (другое сообщение, которое зависит от введенных пользователем данных).
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:TextBox ID="txtMyTexbox" runat="server" Width="500px" OnTextChanged="txtMyTexbox_TextChanged" AutoPostBack="true"></asp:TextBox>
<br />
<asp:Label ID="lblMessage" runat="server" CssClass="errorMessage" Visible="false">Hello World</asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="txtMyTexbox" />
</Triggers>
</asp:UpdatePanel>
На стороне сервера я написал следующее при загрузке страницы
ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(txtMyTexbox);
и метод, подобный этому
protected void txtMyTexbox_TextChanged(object sender, EventArgs e)
{
if (.....)
{
lblMessage.Visible = false;
}
else
{
lblMessage.Visible = true;
}
}
Теперь моя проблема заключается в следующем: когда пользователь вводит текст в текстовое поле, он не вызывает событие OnTextChanged.
Я что-то упустил?