我有一个AspxCallback控件,当我单击Button时,它应该更新文本框文本。但是当我点击按钮时没有任何反应。 以下是我测试的示例代码:
C#:
protected void callback_Callback(object source, DevExpress.Web.ASPxCallback.CallbackEventArgs e)
{
txtTest.Text = "Text for Textbox";
}
ASP.NET:
<asp:Button ID="btnTest" runat="server" Text="CLICK" OnClientClick="callback.PerformCallback(); return false;" />
<br />
<asp:TextBox ID="txtTest" runat="server" Width="200" Height="25"></asp:TextBox>
<dx:ASPxCallback ID="callback" runat="server" ClientInstanceName="callback"
oncallback="callback_Callback">
</dx:ASPxCallback>
答案 0 :(得分:1)
“您的问题在于TextBox不在CallBack Panel中。 回调的工作方式就像一个ajax调用,只能更新启用Ajax 以便说出控件。出于这个原因,这些控件可以放在回调面板中。
<dxcp:ASPxCallbackPanel ID="ASPxCallbackPanel1" runat="server" Width="223px" BackColor="#FFFFC0" ClientInstanceName="callbackPanel1" Height="78px" oncallback="callback_Callback">
<PanelCollection>
<dxp:panelcontent runat="server">
<asp:Button ID="btnTest" runat="server" Text="CLICK"
OnClientClick="callbackPanel1.PerformCallback(); return false;" />
<br />
<asp:TextBox ID="txtTest" runat="server" Width="200" Height="25"></asp:TextBox>
</dxp:panelcontent>
</PanelCollection>
</dxcp:ASPxCallbackPanel>
我认为这可以解决您的问题。现在您的代码将正确更新TextBox。