asp.net - AJAX Control Toolkit: TabPanel Visible=false causes other tab panels to show mixed content when changing ActiveTabIndex -
i updated toolkit version 30930 (sep 2009) 7.1213 (dec 2013) on project containing complex implementation of tabcontainer. before update had no issue @ page , tabcontainer in general, referenced new toolkit version found out strange behaviors. reduced in simple, basic standalone page, follows:
aspx page
<%@ page language="c#" autoeventwireup="true" codebehind="tabcontainersample.aspx.cs" inherits="sampleproject.tabcontainersample" %> <%@ register assembly="ajaxcontroltoolkit" namespace="ajaxcontroltoolkit" tagprefix="cc2" %> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="head1" runat="server"> <title>tabcontainer tab not visible issue test page</title> </head> <body> <form id="form1" runat="server"> <cc2:toolkitscriptmanager id="toolkitscriptmanager1" runat="server"></cc2:toolkitscriptmanager> <div id="maincontent"> <asp:label id="lblactivetab" runat="server"></asp:label> <cc2:tabcontainer runat="server" width="100%" id="tabcontdns" activetabindex="0" onactivetabchanged="tabcontdns_activetabchanged" autopostback="true"> <cc2:tabpanel runat="server" headertext="tab 1" id="tab1"> <contenttemplate> <p>tab 1</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 2" id="tab2"> <contenttemplate> <p>tab 2</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="invisible tab" id="tab0" visible="false"> <contenttemplate> <p>tab 0 (invisible)</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 3 (after invisible tab starts here)" id="tab3"> <contenttemplate> <p>tab 3</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 4" id="tab4"> <contenttemplate> <p>tab 4</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 5" id="tab5"> <contenttemplate> <p>tab 5</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 6" id="tab6"> <contenttemplate> <p>tab 6</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 7" id="tab7"> <contenttemplate> <p>tab 7</p> </contenttemplate> </cc2:tabpanel> <cc2:tabpanel runat="server" headertext="tab 8" id="tab8"> <contenttemplate> <p>tab 8</p> </contenttemplate> </cc2:tabpanel> </cc2:tabcontainer> </div> </form> </body> </html>
cs code
using system;
namespace sampleproject { public partial class tabcontainersample : system.web.ui.page { protected void page_load(object sender, eventargs e) { //tab0.visible = false; //tab0.enabled = false; } protected void tabcontdns_activetabchanged(object sender, eventargs e) { lblactivetab.text = "selected tab: " + tabcontdns.activetab.headertext; } } }
basically happens when set 1 or more tab invisible (no matter whether attribute on tag declaration or in code-behind), tabcontainer starts display mixed-content tabs after activetabchanged event, when index requested equals or greater 1 of not visible. issue showing both or without updatepanels on page.
i found no other discussion that, except old 1 on codeplex, describes happening me. answered work item , opened new one myself, not sure going on , why old bug popping out again that.
hope can advice workaround or other useful tip.
edit: bug seems re-introduced on december 2013 toolkit version. anyway, may have found workaround bypass issue. discussion still on progress on codeplex platform, posted there details: https://ajaxcontroltoolkit.codeplex.com/workitem/27646
Comments
Post a Comment