This is a migrated thread and some comments may be shown as answers.

onMouseOut problem

3 Answers 308 Views
TabStrip
This is a migrated thread and some comments may be shown as answers.
Jen
Top achievements
Rank 1
Jen asked on 22 Jan 2009, 10:16 AM
I have a problem with my tabstrip control. If I mouse over a listelement and that element has child elements, they are shown correctly. Then if I mouse over another listitem and that listitem has no childitems, you can still see the child items of the previous listelement. What can I do to prevent this? 

3 Answers, 1 is accepted

Sort by
0
Paul
Telerik team
answered on 22 Jan 2009, 10:34 AM
Hi Jennifer,

We tried to reproduce the reported issue using our Tabs Preview example (just removed the child tabs of the second root tab), but to no avail. Could you please send us your ASPX / code-behind so we can examine your code and provide a solution?

Thanks,
Paul
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Jen
Top achievements
Rank 1
answered on 22 Jan 2009, 10:42 AM
This is my ASCX code:

<%@ Control Language="vb" CodeFile="RadTabstrip.ascx.vb" Inherits="Telerik.DNN.SkinObjects.RadTabstripSkinObject" %> 
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %> 
 <script type="text/javascript" language="javascript">  
   function SelectMyTab(sender, args)  
   {  
        var tab = args.get_tab();  
        var navigateUrl = tab.get_navigateUrl();  
        if (navigateUrl == "#")  
        {  
            args.get_tab().selectParents();  
        }  
   }  
   </script> 
<telerik:RadTabstrip id="TS" EnableViewState="false" runat="server" OnClientMouseOver="SelectMyTab" EnableEmbeddedSkins="false" CausesValidation="false" /> 
 

And this is my code-behind:

Imports System.Web  
Imports System.Xml  
Imports DotNetNuke.Security  
Imports DotNetNuke.Entities.Portals  
Imports DotNetNuke.Entities.Tabs  
Imports Telerik.Web.UI  
 
Namespace Telerik.DNN.SkinObjects  
 
    Partial Public Class RadTabStripSkinObject  
        Inherits DotNetNuke.UI.Skins.SkinObjectBase
#Region "Private Members"  
        'variables and structures  
        Private PagesQueue As Queue  
        Private AuthPages As ArrayList  
        Private arrayShowPath As ArrayList  
        Private dnnSkinSrc As String = PortalSettings.ActiveTab.SkinSrc.Replace("\"c, "/"c).Replace("//""/")  
        Private dnnSkinPath As String = dnnSkinSrc.Substring(0, dnnSkinSrc.LastIndexOf("/"c))  
        Private Structure qElement  
            Dim TSTab As RadTab  
            Dim page As TabInfo  
            Dim item As Integer 
        End Structure 
 
        Private _Style As System.String = String.Empty  
 
        'tab specific properties  
        Private _TabChildGroupCssClass As String = String.Empty  
        Private _TabCssClass As String = String.Empty  
        Private _TabDisabledCssClass As String = String.Empty  
        Private _TabHeight As System.Web.UI.WebControls.Unit = System.Web.UI.WebControls.Unit.Empty  
        Private _TabImageUrl As String = String.Empty  
        Private _TabSelectedCssClass As String = String.Empty  
        Private _TabWidth As System.Web.UI.WebControls.Unit = System.Web.UI.WebControls.Unit.Empty  
 
        'skinobject properties  
        Private _ImagesOnlyTabStrip As Boolean = False 
        Private _MaxLevel As Integer = -1  
        Private _ItemsPerRow As Integer = -1  
        Private _EnableItemId As Boolean = True 
        Private _EnableToolTips As Boolean = True 
        Private _ShowOnlyCurrent As String = String.Empty  
        Private _CopyChildItemLink As Boolean = False 
        Private _EnableUserMenus As Boolean = True 
        Private _EnableAdminMenus As Boolean = True 
        Private _PagesToExclude As String 
        ' ML Extension  
        Private _MLTabDic As Generic.Dictionary(Of Int32, effority.Ealo.Specialized.TabInfo)
#End Region  
 
#Region "Public Members" 
        ' ML Extension  
        Public ReadOnly Property MLTabDic() As Generic.Dictionary(Of Int32, effority.Ealo.Specialized.TabInfo)  
            Get 
                If _MLTabDic Is Nothing Then 
 
                    _MLTabDic = effority.Ealo.Specialized.Tabs.GetAllTabsAsDictionary(System.Threading.Thread.CurrentThread.CurrentCulture.ToString(), False)  
 
                End If 
 
                Return _MLTabDic  
            End Get 
        End Property 
        'tabstrip properties  
        Public Property Align() As TabStripAlign  
            Get 
                Return TS.Align  
            End Get 
            Set(ByVal Value As TabStripAlign)  
                TS.Align = Value  
            End Set 
        End Property 
        Public Property CausesValidation() As Boolean 
            Get 
                Return TS.CausesValidation  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.CausesValidation = Value  
            End Set 
        End Property 
        Public Property CssClass() As String 
            Get 
                Return TS.CssClass  
            End Get 
            Set(ByVal Value As String)  
                TS.CssClass = Value  
            End Set 
        End Property 
        Public Property Height() As System.Web.UI.WebControls.Unit  
            Get 
                Return TS.Height  
            End Get 
            Set(ByVal Value As System.Web.UI.WebControls.Unit)  
                TS.Height = Value  
            End Set 
        End Property 
        Public Property MultiPageID() As String 
            Get 
                Return TS.MultiPageID  
            End Get 
            Set(ByVal Value As String)  
                TS.MultiPageID = Value  
            End Set 
        End Property 
        Public Property OnClientContextMenu() As String 
            Get 
                Return TS.OnClientContextMenu  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientContextMenu = Value  
            End Set 
        End Property 
        Public Property OnClientDoubleClick() As String 
            Get 
                Return TS.OnClientDoubleClick  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientDoubleClick = Value  
            End Set 
        End Property 
        Public Property OnClientLoad() As String 
            Get 
                Return TS.OnClientLoad  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientLoad = Value  
            End Set 
        End Property 
        Public Property OnClientMouseOut() As String 
            Get 
                Return TS.OnClientMouseOut  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientMouseOut = Value  
            End Set 
        End Property 
        Public Property OnClientMouseOver() As String 
            Get 
                Return TS.OnClientMouseOver  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientMouseOver = Value  
            End Set 
        End Property 
        Public Property OnClientTabSelected() As String 
            Get 
                Return TS.OnClientTabSelected  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientTabSelected = Value  
            End Set 
        End Property 
        Public Property OnClientTabSelecting() As String 
            Get 
                Return TS.OnClientTabSelecting  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientTabSelecting = Value  
            End Set 
        End Property 
        Public Property OnClientTabUnSelected() As String 
            Get 
                Return TS.OnClientTabUnSelected  
            End Get 
            Set(ByVal Value As String)  
                TS.OnClientTabUnSelected = Value  
            End Set 
        End Property 
        Public Property Orientation() As TabStripOrientation  
            Get 
                Return TS.Orientation  
            End Get 
            Set(ByVal Value As TabStripOrientation)  
                TS.Orientation = Value  
            End Set 
        End Property 
        Public Property PerTabScrolling() As Boolean 
            Get 
                Return TS.PerTabScrolling  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.PerTabScrolling = Value  
            End Set 
        End Property 
        Public Property ReorderTabsOnSelect() As Boolean 
            Get 
                Return TS.ReorderTabsOnSelect  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.ReorderTabsOnSelect = Value  
            End Set 
        End Property 
        Public Property ScrollButtonsPosition() As TabStripScrollButtonsPosition  
            Get 
                Return TS.ScrollButtonsPosition  
            End Get 
            Set(ByVal Value As TabStripScrollButtonsPosition)  
                TS.ScrollButtonsPosition = Value  
            End Set 
        End Property 
        Public Property ScrollChildren() As Boolean 
            Get 
                Return TS.ScrollChildren  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.ScrollChildren = Value  
            End Set 
        End Property 
        Public Property ScrollPosition() As Integer 
            Get 
                Return TS.ScrollPosition  
            End Get 
            Set(ByVal Value As Integer)  
                TS.ScrollPosition = Value  
            End Set 
        End Property 
        Public Property Skin() As String 
            Get 
                Return TS.Skin  
            End Get 
            Set(ByVal Value As String)  
                TS.Skin = Value  
            End Set 
        End Property 
        Public Property Width() As System.Web.UI.WebControls.Unit  
            Get 
                Return TS.Width  
            End Get 
            Set(ByVal Value As System.Web.UI.WebControls.Unit)  
                TS.Width = Value  
            End Set 
        End Property 
        Public Property ClickSelectedTab() As Boolean 
            Get 
                Return TS.ClickSelectedTab  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.ClickSelectedTab = Value  
            End Set 
        End Property 
        Public Property UnSelectChildren() As Boolean 
            Get 
                Return TS.UnSelectChildren  
            End Get 
            Set(ByVal Value As Boolean)  
                TS.UnSelectChildren = Value  
            End Set 
        End Property 
 
        'tab specific properties  
        Public Property TabChildGroupCssClass() As String 
            Get 
                Return _TabChildGroupCssClass  
            End Get 
            Set(ByVal Value As String)  
                _TabChildGroupCssClass = Value  
            End Set 
        End Property 
        Public Property TabCssClass() As String 
            Get 
                Return _TabCssClass  
            End Get 
            Set(ByVal Value As String)  
                _TabCssClass = Value  
            End Set 
        End Property 
        Public Property TabDisabledCssClass() As String 
            Get 
                Return _TabDisabledCssClass  
            End Get 
            Set(ByVal Value As String)  
                _TabDisabledCssClass = Value  
            End Set 
        End Property 
        Public Property TabHeight() As System.Web.UI.WebControls.Unit  
            Get 
                Return _TabHeight  
            End Get 
            Set(ByVal Value As System.Web.UI.WebControls.Unit)  
                _TabHeight = Value  
            End Set 
        End Property 
        Public Property TabImageUrl() As String 
            Get 
                Return _TabImageUrl  
            End Get 
            Set(ByVal Value As String)  
                _TabImageUrl = Value  
            End Set 
        End Property 
        Public Property TabSelectedCssClass() As String 
            Get 
                Return _TabSelectedCssClass  
            End Get 
            Set(ByVal Value As String)  
                _TabSelectedCssClass = Value  
            End Set 
        End Property 
        Public Property TabWidth() As System.Web.UI.WebControls.Unit  
            Get 
                Return _TabWidth  
            End Get 
            Set(ByVal Value As System.Web.UI.WebControls.Unit)  
                _TabWidth = Value  
            End Set 
        End Property 
 
        'skinobject properties  
        Public Property ShowOnlyCurrent() As String 
            Get 
                Return _ShowOnlyCurrent  
            End Get 
            Set(ByVal Value As String)  
                _ShowOnlyCurrent = Value  
            End Set 
        End Property 
        Public Property EnableItemId() As Boolean 
            Get 
                Return _EnableItemId  
            End Get 
            Set(ByVal Value As Boolean)  
                _EnableItemId = Value  
            End Set 
        End Property 
        Public Property EnableToolTips() As Boolean 
            Get 
                Return _EnableToolTips  
            End Get 
            Set(ByVal Value As Boolean)  
                _EnableToolTips = Value  
            End Set 
        End Property 
        Public Property ItemsPerRow() As Integer 
            Get 
                Return _ItemsPerRow  
            End Get 
            Set(ByVal Value As Integer)  
                _ItemsPerRow = Value  
            End Set 
        End Property 
        Public Property MaxLevel() As Integer 
            Get 
                Return _MaxLevel  
            End Get 
            Set(ByVal Value As Integer)  
                _MaxLevel = Value  
            End Set 
        End Property 
        Public Property ImagesOnlyTabStrip() As Boolean 
            Get 
                Return _ImagesOnlyTabStrip  
            End Get 
            Set(ByVal Value As Boolean)  
                _ImagesOnlyTabStrip = Value  
            End Set 
        End Property 
        Public Property CopyChildItemLink() As Boolean 
            Get 
                Return _CopyChildItemLink  
            End Get 
            Set(ByVal Value As Boolean)  
                _CopyChildItemLink = Value  
            End Set 
        End Property 
        Public Property EnableUserMenus() As Boolean 
            Get 
                Return _EnableUserMenus  
            End Get 
            Set(ByVal Value As Boolean)  
                _EnableUserMenus = Value  
            End Set 
        End Property 
        Public Property EnableAdminMenus() As Boolean 
            Get 
                Return _EnableAdminMenus  
            End Get 
            Set(ByVal Value As Boolean)  
                _EnableAdminMenus = Value  
            End Set 
        End Property 
        Public Property PagesToExclude() As String 
            Get 
                Return _PagesToExclude  
            End Get 
            Set(ByVal Value As String)  
                _PagesToExclude = Value  
            End Set 
        End Property 
        Public Property Style() As System.String 
            Get 
                Return _Style  
            End Get 
            Set(ByVal Value As System.String)  
                _Style = Value  
            End Set 
        End Property
#End Region  
 
#Region " Web Form Designer Generated Code " 
 
        'This call is required by the Web Form Designer.  
        <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()  
 
        End Sub 
 
        'NOTE: The following placeholder declaration is required by the Web Form Designer.  
        'Do not delete or move it.  
        Private designerPlaceholderDeclaration As System.Object 
 
        Private Sub Page_Init(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Init  
            'CODEGEN: This method call is required by the Web Form Designer  
            'Do not modify it using the code editor.  
            InitializeComponent()  
        End Sub
#End Region  
        Private Sub Page_Load(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Load  
            Dim i, iItemIndex As Integer 
            Dim iRootGroupId, StartingItemId As Integer 
            Dim objTabController As New TabController  
 
            AuthPages = New ArrayList  
            PagesQueue = New Queue  
            arrayShowPath = New ArrayList  
            iItemIndex = 0  
            '---------------------------------------------------  
            SetTabStripProperties()  
 
            'optional code to support displaying a specific branch of the page tree  
            GetShowOnlyCurrent(objTabController, StartingItemId, iRootGroupId)  
 
            For i = 0 To PortalSettings.DesktopTabs.Count - 1  
                Dim currentTab As TabInfo = CType(PortalSettings.DesktopTabs(i), TabInfo)  
                If (currentTab.TabID = PortalSettings.ActiveTab.TabID) Then 
                    FillShowPathArray(arrayShowPath, currentTab.TabID, objTabController)  
                End If 
                 
                If IsTabVisible(currentTab) Then 
                    Dim tabElement As qElement = New qElement  
                    tabElement.page = CType(PortalSettings.DesktopTabs(i), TabInfo)  
                    tabElement.TSTab = New RadTab  
                    Dim tab As effority.Ealo.Specialized.TabInfo  
                    If Me.MLTabDic.TryGetValue(CInt(tabElement.page.TabID), tab) Then 
                        If Not tab.EaloTabName Is Nothing Then 
                            tabElement.page.TabName = tab.EaloTabName.StringTextOrFallBack  
                        Else 
                            tabElement.page.TabName = tab.TabName  
                        End If 
                    End If 
 
                    'If (EnableItemId) Then  
                    '   tabElement.TSTab.ID = "TS_" & currentTab.TabID.ToString  
                    'End If  
 
                    If CheckShowOnlyCurrent(currentTab.TabID, currentTab.ParentId, StartingItemId, iRootGroupId) AndAlso _  
                       CheckMenuVisibility(currentTab) Then 
                        iItemIndex = iItemIndex + 1  
                        tabElement.item = iItemIndex  
                        PagesQueue.Enqueue(AuthPages.Count)  
                        TS.Tabs.Add(tabElement.TSTab)  
                    End If 
 
                    AuthPages.Add(tabElement)  
                End If 
            Next i  
            BuildTabStrip()  
            If (TS.Tabs.Count = 0) Then 
                TS.Visible = False 
            End If 
 
 
        End Sub 
 
        Private Function IsTabVisible(ByVal tab As TabInfo) As Boolean 
            If (tab.IsVisible = True And tab.IsDeleted = FalseAnd _  
            ((tab.StartDate < Now And tab.EndDate > Now) Or AdminMode) And _  
            (PortalSecurity.IsInRoles(tab.AuthorizedRoles) And Not CheckToExclude(tab.TabName, tab.TabID)) Then 
                Return True 
            Else 
                Return False 
            End If 
        End Function 
 
        Private Function CheckToExclude(ByVal tabName As StringByVal tabId As Int32) As Boolean 
            If (PagesToExclude = String.Empty) Then 
                Return False 
            End If 
            Dim temp As String() = PagesToExclude.Split(New Char() {","c})  
            If (temp.Length = 0) Then 
                Return False 
            End If 
            Dim item As String 
            For Each item In temp  
                Try 
                    If tabId = Int32.Parse(item.Trim()) Then 
                        Return True 
                    End If 
                Catch 
                    If tabName = item.Trim() Then 
                        Return True 
                    End If 
                End Try 
            Next 
            Return False 
        End Function 
 
        Private Sub GetShowOnlyCurrent(ByVal objTabController As TabController, ByRef StartingItemId As IntegerByRef iRootGroupId As Integer)  
            StartingItemId = 0  
            iRootGroupId = 0  
            'check if we have a value to work with  
            If (ShowOnlyCurrent = String.Empty) Then 
                Exit Sub 
            End If 
            'check if user specified an ID  
            If (Char.IsDigit(ShowOnlyCurrent.Chars(0))) Then 
                Try 
                    StartingItemId = Integer.Parse(ShowOnlyCurrent)  
                Catch ex As Exception  
                End Try 
            End If 
            'check if user specified a page name  
            If (ShowOnlyCurrent.StartsWith("PageItem:")) Then 
                Dim temptab As TabInfo = objTabController.GetTabByName(ShowOnlyCurrent.Substring(("PageItem:").Length), PortalSettings.PortalId)  
                If (Not temptab Is NothingThen 
                    StartingItemId = temptab.TabID  
                End If 
            End If 
            'RootItem  
            If ("RootItem" = ShowOnlyCurrent) Then 
                iRootGroupId = PortalSettings.ActiveTab.TabID  
                While (CType(objTabController.GetTab(iRootGroupId, PortalSettings.PortalId, True), TabInfo).ParentId <> -1)  
                    iRootGroupId = CType(objTabController.GetTab(iRootGroupId, PortalSettings.PortalId, True), TabInfo).ParentId  
                End While 
            End If 
        End Sub 
        Private Function CheckShowOnlyCurrent(ByVal tabId As IntegerByVal parentId As IntegerByVal StartingItemId As IntegerByVal iRootGroupId As IntegerAs Boolean 
            If _  
             (String.Empty = ShowOnlyCurrent AndAlso parentId = -1) OrElse _  
             ("ChildItems" = ShowOnlyCurrent AndAlso parentId = PortalSettings.ActiveTab.TabID) OrElse _  
             ("CurrentItem" = ShowOnlyCurrent AndAlso tabId = PortalSettings.ActiveTab.TabID) OrElse _  
             ("RootItem" = ShowOnlyCurrent AndAlso iRootGroupId = parentId) OrElse _  
             (StartingItemId > 0 AndAlso parentId = StartingItemId) _  
            Then 
                Return True 
            Else 
                Return False 
            End If 
        End Function 
        Private Function CheckMenuVisibility(ByVal tab As TabInfo) As Boolean 
            If (Not EnableAdminMenus AndAlso (tab.IsAdminTab Or tab.IsSuperTab)) Then 
                Return False 
            End If 
            If (Not EnableUserMenus AndAlso Not (tab.IsAdminTab Or tab.IsSuperTab)) Then 
                Return False 
            End If 
            Return True 
        End Function 
        Private Sub FillShowPathArray(ByRef arrayShowPath As ArrayList, ByVal selectedTabID As IntegerByVal objTabController As TabController)  
            Dim tempTab As TabInfo = objTabController.GetTab(selectedTabID, PortalSettings.PortalId, True)  
            While (tempTab.ParentId <> -1)  
                arrayShowPath.Add(tempTab.TabID)  
                tempTab = objTabController.GetTab(tempTab.ParentId, PortalSettings.PortalId, True)  
            End While 
            arrayShowPath.Add(tempTab.TabID)  
        End Sub 
        Private Sub CheckShowPath(ByVal tabId As IntegerByVal tabName As StringByRef tab As RadTab)  
            If (arrayShowPath.Contains(tabId)) Then 
                tab.Selected = True 
                tab.SelectParents()  
            End If 
        End Sub 
        Private Sub SetTabStripProperties()  
            If (Style <> String.Empty) Then 
                Style += "; " 
                Try 
                    For Each cStyle As String In Style.Split(";"c)  
                        If (cStyle.Trim.Length > 0) Then 
                            TS.Style.Add(cStyle.Split(":"c)(0), cStyle.Split(":"c)(1))  
                        End If 
                    Next 
                Catch 
                End Try 
            End If 
        End Sub 
        Private Sub SetTabProperties(ByRef TSTab As RadTab)  
            If (Me.TabChildGroupCssClass.Length > 0) Then 
                TSTab.ChildGroupCssClass = Me.TabChildGroupCssClass  
            End If 
            If (Me.TabCssClass.Length > 0) Then 
                TSTab.CssClass = Me.TabCssClass  
            End If 
            If (Me.TabDisabledCssClass.Length > 0) Then 
                TSTab.DisabledCssClass = Me.TabDisabledCssClass  
            End If 
            If (Not Me.Height.IsEmpty) Then 
                TSTab.Height = Me.TabHeight  
            End If 
            If (Me.TabSelectedCssClass.Length > 0) Then 
                TSTab.SelectedCssClass = Me.TabSelectedCssClass  
            End If 
            If (Not Me.TabWidth.IsEmpty) Then 
                TSTab.Width = Me.TabWidth  
            End If 
        End Sub 
        Private Sub BuildTabStrip()  
            While Not (PagesQueue.Count = 0)  
                Dim pageID As Integer = CInt(PagesQueue.Dequeue())  
                Dim currentElement As qElement = CType(AuthPages(pageID), qElement)  
                Dim page As TabInfo = currentElement.page  
 
                'add Tab properties  
                SetTabProperties(currentElement.TSTab)  
 
                CheckShowPath(page.TabID, page.TabName, currentElement.TSTab)  
 
                If ((ItemsPerRow > 0) AndAlso (currentElement.item Mod ItemsPerRow = 0)) Then 
                    currentElement.TSTab.IsBreak = True 
                End If 
 
                If (Not page.DisableLink) Then 
                    If (page.FullUrl.StartsWith("*"And page.FullUrl.IndexOf("*", 1) <> -1) Then 
                        currentElement.TSTab.NavigateUrl = page.FullUrl.Substring(page.FullUrl.IndexOf("*", 1) + 1)  
                        currentElement.TSTab.Target = page.FullUrl.Substring(1, page.FullUrl.IndexOf("*", 1) - 1)  
                    Else 
                        currentElement.TSTab.NavigateUrl = page.FullUrl  
                    End If 
                ElseIf (CopyChildItemLink AndAlso page.Level >= MaxLevel) Then 
                    Dim j As Integer = 0  
                    'check if there are any child items and use a href from the first one  
                    While (j < AuthPages.Count AndAlso _  
                      (CType(AuthPages(j), qElement).page.ParentId <> page.TabID OrElse _  
                      CType(AuthPages(j), qElement).page.DisableLink))  
                        j = j + 1  
                    End While 
                    If (j < AuthPages.Count) Then 
                        ' child item found. use its link  
                        currentElement.TSTab.NavigateUrl = CType(AuthPages(j), qElement).page.FullUrl  
                    End If 
                End If 
 
                If ((EnableToolTips) AndAlso (page.Description <> String.Empty)) Then 
                    currentElement.TSTab.ToolTip = page.Description  
                End If 
 
                If (Me.TabImageUrl.Length > 0) Then 
                    currentElement.TSTab.ImageUrl = Me.TabImageUrl.Replace("*SkinPath*", dnnSkinPath).Replace("*PageName*", page.TabName)  
                End If 
 
                If ((page.IconFile <> String.Empty) AndAlso (currentElement.TSTab.ImageUrl.Length = 0)) Then 
                    Dim imgaddress As String 
                    If (page.IsAdminTab Or page.IsSuperTab) Then 
                        imgaddress = CStr(IIf(Me.Request.ApplicationPath <> "/"Me.Request.ApplicationPath.ToUpper, String.Empty)) & "/images/" & page.IconFile  
                    Else 
                        imgaddress = PortalSettings.HomeDirectory & page.IconFile  
                    End If 
                    currentElement.TSTab.ImageUrl = imgaddress  
                End If 
 
                If ((Not ImagesOnlyTabStrip) OrElse (ImagesOnlyTabStrip AndAlso currentElement.TSTab.ImageUrl.Length = 0)) Then 
                    currentElement.TSTab.Text = page.TabName  
                End If 
 
                'attach child items the current one  
                If (page.Level < MaxLevel Or MaxLevel < 0) Then 
                    Dim iItemIndex, j As Integer 
                    Dim childElement As qElement  
                    iItemIndex = 0  
                    For j = 0 To AuthPages.Count - 1  
                        childElement = CType(AuthPages(j), qElement)  
                        If (childElement.page.ParentId = page.TabID) Then 
                            currentElement.TSTab.Tabs.Add(childElement.TSTab)  
                            PagesQueue.Enqueue(j)  
                            iItemIndex = iItemIndex + 1  
                            childElement.item = iItemIndex  
                            AuthPages(j) = childElement  
                        End If 
                    Next j  
                End If 
            End While 
        End Sub 
    End Class 
End Namespace 


0
Paul
Telerik team
answered on 22 Jan 2009, 11:47 AM
Hello Jennifer,

I suggest you follow the approach provided in our Tabs Preview example.

Best wishes,
Paul
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
Tags
TabStrip
Asked by
Jen
Top achievements
Rank 1
Answers by
Paul
Telerik team
Jen
Top achievements
Rank 1
Share this question
or