2012-02-10 81 views
0

我想在devexpress callbackpanel裏面使用Ext.Net控件。首先呈現頁面時,一切正常,Ext控件都可以。但是,當您使用PerformCallback()函數刷新callback面板時,Ext控件消失。解決辦法是什麼?After Devexpress CallbackPanel PerformCallback後,不顯示Ext控件

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="devex_ext._default" %> 

<%@ Register Assembly="DevExpress.Web.v10.2, Version=10.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
    Namespace="DevExpress.Web.ASPxCallbackPanel" TagPrefix="dx" %> 
<%@ Register Assembly="DevExpress.Web.v10.2, Version=10.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
    Namespace="DevExpress.Web.ASPxTabControl" TagPrefix="dx" %> 
<%@ Register Assembly="DevExpress.Web.v10.2, Version=10.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
    Namespace="DevExpress.Web.ASPxClasses" TagPrefix="dx" %> 
<%@ Register Assembly="DevExpress.Web.v10.2, Version=10.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
    Namespace="DevExpress.Web.ASPxCallbackPanel" TagPrefix="dx" %> 
<%@ Register Assembly="DevExpress.Web.v10.2, Version=10.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
    Namespace="DevExpress.Web.ASPxPanel" TagPrefix="dx" %> 

<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <ext:ResourceManager ID="ResourceManager1" runat="server" /> 

    <div style="clear:both"> 

    <dx:ASPxCallbackPanel ID="ASPxCallbackPanel2" ClientInstanceName="cp" runat="server" Width="200px"> 
     <PanelCollection> 
      <dx:PanelContent ID="PanelContent2" runat="server"> 
       <dx:ASPxPageControl ID="ASPxPageControl2" runat="server"> 
        <TabPages> 
         <dx:TabPage Text="Ext Linkbutton"> 
          <ContentCollection> 
           <dx:ContentControl ID="ContentControl1" runat="server"> 
            <ext:LinkButton ID="Linkbutton1" runat="server" Text="Linkbutton"> 
             <Listeners> 
              <Click Handler="Ext.Msg.alert('Clicked', 'LinkButton');" /> 
             </Listeners> 
            </ext:LinkButton> 
           </dx:ContentControl> 
          </ContentCollection> 
         </dx:TabPage> 
         <dx:TabPage Text="Asp Button"> 
          <ContentCollection> 
           <dx:ContentControl ID="ContentControl2" runat="server"> 
            <asp:Button ID="Button1" runat="server" Text="Button" />  
           </dx:ContentControl> 
          </ContentCollection> 
         </dx:TabPage> 
        </TabPages> 
       </dx:ASPxPageControl> 
      </dx:PanelContent> 
     </PanelCollection> 
    </dx:ASPxCallbackPanel> 

    <ext:LinkButton ID="LinkButton2" runat="server" Text="Refresh"> 
     <Listeners> 
      <Click Handler="cp.PerformCallback()" /> 
     </Listeners> 
    </ext:LinkButton> 

    </div> 
    </form> 
</body> 
</html> 

回答

0

此代碼是行不通的,因爲你沒有指定ASPxCallbackPanel.ClientInstanceName屬性(尚未啓用客戶端編程對象)。

修改您的標記如下:

<dx:ASPxCallbackPanel ... ClientInstanceName="cp"> 


<Click Handler="cp.PerformCallback()" /> 

檢查this演示,說明如何使用ASPxCallbackPanel容器。

+0

問題不在於,我按照您的建議提出,存在同樣的問題。 – serefbilge 2012-02-10 19:09:45

0

如果你不會運行回調使用JavaScript的前綴「dxis_」後的JavaScript,看看這個topic

您可以添加,和與特定ID例如格,然後再運行腳本,創建ExtJS的控制,配置包含renderTo:'specific di'