2013-06-05 66 views
1

我有一个AspxCallback控件,当我点击按钮时应该更新文本框文本。但是当我点击按钮时没有任何反应。 下面是测试我的示例代码:AspxCallback没有更新信息

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

为什么不只是使用OnClick而不是OnClientClick? –

回答

1

“你的问题在于这样的事实,文本框不在回调面板内 回调的工作方式就像一个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。