views:

1811

answers:

1

I have a TabContainer inside a Multiview. When I bring up a specific editing page that lists records in a Gridview for editing, and then click one of those items... it takes that data from the record selected and populates a form on another View inside the Multiview.

That View contains a Tab Container. My problem is that if I come in on the editing piece of the page, Select a record, then switch to the View with the TabContainer, the styling for the buttons does not show up for the TabContainer, just the Header text.

I'm assuming that this is a problem of the View being not visible when I come into the page because I'm working with the other view initially. Is there any way around this?

<asp:MultiView ID="PersonPanelView" runat="server">
   <asp:View ID="AddPersonView" runat="server">
      <ajaxToolkit:TabContainer ID="PersonInformationTabContainer" runat="server" 
                                Width="80%">
          <ajaxToolkit:TabPanel ID="PersonalInformationPanel" runat="server" >
                        <HeaderTemplate>
                            Personal Information
                        </HeaderTemplate>
                        <ContentTemplate>...</ContentTemplate>
          </ajaxToolkit:TabPanel>
          <ajaxToolkit:TabPanel ID="CompanyInformationPanel" runat="server">
                        <HeaderTemplate>
                            Company Information
                        </HeaderTemplate>
                        <ContentTemplate>...</ContentTemplate>
          </ajaxToolkit:TabPanel>
       </ajaxToolkit:TabContainer>
    </asp:View>
    <asp:View ID="EditPersonView" runat="server">
         ... Gridview that has records to select
    </asp:View>
</asp:MultiView>

All of this is within an UpdatePanel.

A: 

I was able to solve this by doing a workaround. I simply added an empty TabContainer outside the UpdatePanel and set it Visible=True to render the CSS. This is essentially the same workaround for the MaskedEdit problems with styling

jlrolin