2013-02-20 19 views
1

我有一個ASPX頁面,它有2個選項卡。標籤ascx上的日曆控件頁面

每個標籤代碼註冊爲ASCX。我在兩個頁面都有單獨的自定義日曆控件。現在,我的日曆控件無法在組合頁面上工作,但在單獨呈現頁面時起作用。

在主ASPX頁面

<%@ Page Language="VB" %> 
<%@ Register Src="~/Content/Page1.ascx" TagPrefix="Content" TagName="Page1" %> 
<%@ Register Src="~/Content/Page2.ascx" TagPrefix="Content" TagName="Page2" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="PageBody" Runat="Server"> 
    <asp:ScriptManager ID="Main" runat="server" /> 
    <ajaxToolkit:TabContainer ID="tcRecords" ActiveTabIndex="0" runat="server"> 
     <ajaxToolkit:TabPanel ID="tpSuccess" HeaderText="Success Records" runat="server"> 
      <ContentTemplate> 
       <Content:Page1 ID="P1" runat="server" /> 
      </ContentTemplate> 
     </ajaxToolkit:TabPanel> 
     <ajaxToolkit:TabPanel ID="tpFailed" HeaderText="Failed Records" runat="server"> 
      <ContentTemplate> 
       <Content:Page2 ID = "P2" runat="server" /> 
      </ContentTemplate> 
     </ajaxToolkit:TabPanel> 
    </ajaxToolkit:TabContainer> 
</asp:Content> 

代碼代碼在兩個ASCX頁

<%@ Register Src="~/UIControls/Calendar.ascx" TagPrefix="UICtrl" TagName="Calendar" %> 
<UICtrl:Calendar ID="Cal1" runat="server" /> 

回答

0

我已經看到了使用一個aspx頁面相同的用戶控件的多個實例時,之前這樣的行爲。你在使用任何會話變量或視圖狀態嗎?您需要確保您使用唯一ID分配這些內容,否則您將在控件之間混合使用它們。你可以像這樣重命名它們:

ViewState(Me.UniqueID & "_SomeValue") 

Session(Me.UniqueID & "_someOtherValue") 

這將創建唯一的ID的

視圖狀態和會話變量