Пример #1
0
        public WebNavigationItemArgs(Control navigationItem, WebNavigation parentNavigation, INavigationPage pageData, bool isSelected, bool isInSelectedPath, int itemIndex, bool isFirstItem, bool isLastItem, bool expandingLevel, bool isChildOfRemovedNode, WebNavigation subNavigation)
            : base(pageData)
        {
            if (navigationItem == null)
            {
                throw new ArgumentNullException("navigationItem");
            }
            if (parentNavigation == null)
            {
                throw new ArgumentNullException("parentNavigation");
            }

            this.parentNavigation     = parentNavigation;
            this.SubNavigation        = subNavigation;
            this.navigationItem       = navigationItem;
            this.IsSelected           = isSelected;
            this.IsInSelectedPath     = isInSelectedPath;
            this.IsChildOfRemovedNode = isChildOfRemovedNode;
            this.ItemIndex            = itemIndex;
            this.IsFirstItem          = isFirstItem;
            this.IsLastItem           = isLastItem;
            this.ExpandingLevel       = expandingLevel;
        }
Пример #2
0
        protected virtual void PopulateSubNavigation(WebNavigation subNavigation, INavigationPage navigationPage)
        {
            subNavigation.HeadingVisible               = false;
            subNavigation.ExpandAll                    = this.ExpandAll;
            subNavigation.SelectedPageClickable        = this.SelectedPageClickable;
            subNavigation.ShowOnlyPagesInPath          = this.ShowOnlyPagesInPath;
            subNavigation.IndicateIfNodeHasChildren    = this.IndicateIfNodeHasChildren;
            subNavigation.AlwaysPlaceSpanAroundNavItem = this.AlwaysPlaceSpanAroundNavItem;
            subNavigation.HideSelectedPage             = this.HideSelectedPage;

            subNavigation.IncludeChildrenOfRemovedNodesMode = this.IncludeChildrenOfRemovedNodesMode;
            subNavigation.NumberOfLevels = this.NumberOfLevels - 1;
            if (subNavigation.RootPage == null)
            {
                subNavigation.RootPage = GetNavigationPage(navigationPage.ParentId);
            }
            if (subNavigation.NavPage == null)
            {
                subNavigation.NavPage = navigationPage;
            }
            if (subNavigation.SelectedNavigationPage == null)
            {
                subNavigation.SelectedNavigationPage = this.SelectedNavigationPage;
            }
            if (subNavigation.HeaderTemplate == null)
            {
                var defaultHeaderTemplate = this.HeaderTemplate as DefaultHeaderTemplate;
                if (defaultHeaderTemplate != null && (defaultHeaderTemplate.Id != null || defaultHeaderTemplate.CssClass != null))
                {
                    subNavigation.HeaderTemplate = new DefaultHeaderTemplate(null, null);
                }
                else
                {
                    subNavigation.HeaderTemplate = this.HeaderTemplate;
                }
            }
            subNavigation.RenderId = false;
            subNavigation.CssClass = null;
            if (subNavigation.ItemTemplate == null)
            {
                subNavigation.ItemTemplate = this.ItemTemplate;
            }
            if (subNavigation.FooterTemplate == null)
            {
                subNavigation.FooterTemplate = this.FooterTemplate;
            }
            if (subNavigation.PopulateNavigationItemDelegate == null)
            {
                subNavigation.PopulateNavigationItemDelegate = this.PopulateNavigationItemDelegate;
            }
            if (subNavigation.GetNavigationItemNameDelegate == null)
            {
                subNavigation.GetNavigationItemNameDelegate = this.GetNavigationItemNameDelegate;
            }
            if (subNavigation.GetNavigationItemLinkDelegate == null)
            {
                subNavigation.GetNavigationItemLinkDelegate = this.GetNavigationItemLinkDelegate;
            }
            if (subNavigation.GetNavigationItemDelegate == null)
            {
                subNavigation.GetNavigationItemDelegate = this.GetNavigationItemDelegate;
            }
            if (subNavigation.GetNavigationAnchorDelegate == null)
            {
                subNavigation.GetNavigationAnchorDelegate = this.GetNavigationAnchorDelegate;
            }
            if (subNavigation.CreateWebNavigationControlDelegate == null)
            {
                subNavigation.CreateWebNavigationControlDelegate = this.CreateWebNavigationControlDelegate;
            }
        }