亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? multilevelsectionmenu.cs

?? 非常不錯的學校在線考試分析系統(tǒng)
?? CS
字號:
namespace ASPNET.StarterKit.Communities {

    using System;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.Caching;
    using System.Configuration;
    using System.Collections;
    using System.Data;



    //*********************************************************************
    //
    // MultiLevelSectionMenu Class
    //
	// SMR - Enh - New class for multilevel section menu
	//
    // WebControl that displays top-level sections. This control
    // takes into account the roles of the current user and displays
    // private sections only to users who have the right roles. It also
	// loads the the SubSection menu to handle rendering of the other tiers
	// of the menu structire.
    //
    //*********************************************************************
    public class MultiLevelSectionMenu : SkinnedCommunityControl {
    
        string _skinFileName = "Sections_MultiLevelSectionMenu.ascx";
        Repeater rptSections;

		private bool _expandAll = false;
		bool _showSelection = true;
		int _expandLevels = 0;
		int _currentLevel = 1;
        
		// SMR - Enh - indicates if a special style should be used for the section currently being viewed
		public bool ShowSelection
		{
			get { return _showSelection; }
			set { _showSelection = value; }
		}

		// SMR - Enh - indicates how many levels deep the tree can be exapanded
		public int ExpandLevels
		{
			get { return _expandLevels; }
			set { _expandLevels = value; }
		}

		// SMR - Enh - indicates if the section tree should always be expanded for all nodes
		public bool ExpandAll
		{
			get { return _expandAll; }
			set { _expandAll = value; }
		}

        //*********************************************************************
        //
        // MultiLevelSectionMenu Constructor
        //
        // Calls the base SkinnedCommunityControl constructor
        // and assigns the default page skin.
        //
        //*********************************************************************
        public MultiLevelSectionMenu() : base() 
		{
            // Assign a default template name
            if (SkinFileName == null)
                SkinFileName = _skinFileName;
        }


        //*********************************************************************
        //
        // SkinType Property
        //
        // Specifies the skins directory where this page's skin file is located.
        //
        //*********************************************************************
        override protected string SkinType {
            get { return "ControlSkins"; }
        }

   
        //*********************************************************************
        //
        // InitializeSkin Method
        //
        // Retrieves all the controls from the page skin.
        //
        //*********************************************************************
        override protected void InitializeSkin(Control skin) {

            // Get the Repeater from the Skin
            rptSections = (Repeater)GetControl( skin, "Sections" );
            rptSections.EnableViewState = false;
            rptSections.ItemDataBound += new RepeaterItemEventHandler(Repeater_ItemDataBound);
        }



        //*********************************************************************
        //
        // Repeater_ItemDataBound Method
        //
        // Assigns values to the controls contained in the item and 
        // alternating item templates of the Repeater used to display
        // the list of sections.
        //
        //*********************************************************************
        private void Repeater_ItemDataBound(Object s, RepeaterItemEventArgs e) {
            HyperLink lnkSection;
            SectionMenuLink _sectionMenuLink;
            SubSectionMenu _subSectionCtrl;
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) {
                lnkSection = (HyperLink)GetControl(e.Item, "lnkSection");
                _sectionMenuLink = (SectionMenuLink)e.Item.DataItem;
                _subSectionCtrl = (SubSectionMenu)GetControl(e.Item, "SubSectionMenu");

                lnkSection.Text = _sectionMenuLink.SectionMenuTitle;
                lnkSection.NavigateUrl = _sectionMenuLink.SectionPath;  
  
				if(_showSelection && _sectionMenuLink.SectionID == objSectionInfo.ID)
				{
					lnkSection.CssClass = this.CssClass + "_SelectedMenuItem";
				}

				if(SubSectionUtility.ShowSubSectionsForThisSection(_sectionMenuLink,_expandAll,objSectionInfo) && _expandLevels != _currentLevel)
				{
					_subSectionCtrl.ShowSelection = _showSelection;
					_subSectionCtrl.ExpandAll = _expandAll;
					_subSectionCtrl.CurrentLevel = _currentLevel + 1;
					_subSectionCtrl.ExpandLevels = _expandLevels;
					_subSectionCtrl.SectionId = _sectionMenuLink.SectionID;
				}
				else
				{
					_subSectionCtrl.Visible = false;
				}
            }
        }

        //*********************************************************************
        //
        // OnPreRender Method
        //
        // Binds the sections to the Repeater control.
        //
        //*********************************************************************
        override protected void OnPreRender(EventArgs e) {
            // Bind the results to the DataList
            rptSections.DataSource = GetTopLevelSections(objUserInfo);
            rptSections.DataBind();  
        }


        //*********************************************************************
        //
        // GetTopLevelSections Method
        //
        // Gets list of top-level sections. Displays different sections
        // depending on whether the current user is authenticated.
        //
        //*********************************************************************
        private ArrayList GetTopLevelSections(UserInfo user) {
            if (!user.IsAuthenticated)
                return GetPublicTopLevelSections();
            return GetTopLevelSectionsForUser(user);
        }
    

        //*********************************************************************
        //
        // GetPublicTopLevelSections Method
        //
        // Returns top-level sections from the cache, or if not available,
        // calculates top-level sections.
        //
        //*********************************************************************
        private ArrayList GetPublicTopLevelSections() {   
            ArrayList sections = (ArrayList)Context.Cache[CommunityGlobals.CacheKey("PublicTopLevelSections")];
            if (sections == null) {
                sections = CalculatePublicTopLevelSections();
                Context.Cache.Insert
                (
                    CommunityGlobals.CacheKey("PublicTopLevelSections"),
                    sections,
                    new CacheDependency( null, new string[] {CommunityGlobals.CacheKey("Sections")})
                );
            }
            return sections;
        }
        

        //*********************************************************************
        //
        // CalculatePublicTopLevelSections Method
        //
        // Determines public top-level sections by iterating through
        // the list of sections and finding sections that Everyone or
        // Authenticated can access.
        //
        //*********************************************************************  
        private ArrayList CalculatePublicTopLevelSections() {
            ArrayList publicTopLevelSections = new ArrayList();
            
            ArrayList topLevelSections = GetTopLevelSections();
            foreach (SectionInfo section in topLevelSections)
				if (Array.IndexOf(section.ViewRoles, "Community-Everyone") != -1 || Array.IndexOf(section.ViewRoles, "Community-Authenticated") != -1)
				{
					//SMR - Enh - use new overload constructor for SectionMenuLink
					publicTopLevelSections.Add(new SectionMenuLink(section.MenuTitle, section.Path, section.ID, section.ParentSectionID));   
				}
            return publicTopLevelSections;
        }
        


        //*********************************************************************
        //
        // GetTopLevelSections Method
        //
        // Retrieves all top-level sections.
        //
        //*********************************************************************
        private ArrayList GetTopLevelSections() {
            ArrayList topLevelSections = (ArrayList)Context.Cache[CommunityGlobals.CacheKey("TopLevelSections")];
            
            if (topLevelSections == null) {
                ArrayList sections = SectionUtility.GetAllEnabledSections().GetOrderedSections();
                topLevelSections = new ArrayList();
                foreach (SectionInfo section in sections)
                    if (section.ParentSectionID == -1 || section.ParentSectionID == SectionUtility.DefaultSectionID)
                        topLevelSections.Add(section);
            }
            return topLevelSections;
        }


        //*********************************************************************
        //
        // GetTopLevelSectionsForUser Method
        //
        // Determines top-level sections for an authenticated user.
        // This might include private sections.
        //
        //*********************************************************************
        private ArrayList GetTopLevelSectionsForUser(UserInfo user) {
            ArrayList colSections = new ArrayList();
            bool mayView = false;
            
            ArrayList topLevelSections = GetTopLevelSections();
            foreach (SectionInfo section in topLevelSections) {
                mayView = false;
                foreach (string role in section.ViewRoles) {
                    if (objUserInfo.IsInRole(role) || role=="Community-Everyone" || role=="Community-Authenticated")
                        mayView = true;
                }
                if (mayView)        
                    colSections.Add( new SectionMenuLink(section.MenuTitle, section.Path, section.ID, section.ParentSectionID));
            }
            if (objUserInfo.IsAdministrator)
                colSections.Add( new SectionMenuLink( "Admin", CommunityGlobals.ResolveBase( "Admin/Default.aspx" ) ));
            return colSections;
        }
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人女星排行榜| 欧美日韩高清影院| 国产精品欧美久久久久无广告| 国产米奇在线777精品观看| 国产日韩精品一区二区浪潮av| 极品少妇一区二区三区精品视频| 欧美va在线播放| 国产一区二区0| 国产精品伦理在线| 色偷偷一区二区三区| 亚洲成人一区在线| 日韩欧美黄色影院| 从欧美一区二区三区| 亚洲免费观看高清完整版在线观看熊| 在线精品国精品国产尤物884a| 婷婷亚洲久悠悠色悠在线播放| 777xxx欧美| 国产综合色在线| 国产精品电影一区二区三区| 欧美日韩国产一二三| 精品一区二区三区视频| 亚洲男女毛片无遮挡| 91精品国产色综合久久不卡电影| 国产精品一卡二卡在线观看| 亚洲欧美电影一区二区| 日韩精品影音先锋| 99久久精品国产毛片| 日本在线不卡视频| 国产精品久久一卡二卡| 91精品国产综合久久国产大片| 国产成人一区在线| 亚洲6080在线| 国产精品欧美久久久久无广告| 777xxx欧美| 91麻豆免费观看| 国产主播一区二区三区| 亚洲成人综合网站| 中文字幕中文字幕中文字幕亚洲无线| 欧美日韩免费一区二区三区视频| 国产精品原创巨作av| 亚洲大型综合色站| 国产亚洲一区二区三区| 欧美色图天堂网| 成人在线一区二区三区| 麻豆视频观看网址久久| 亚洲激情校园春色| 久久精品一级爱片| 91精品国产乱| 欧美在线视频不卡| 99久久综合狠狠综合久久| 美女免费视频一区| 午夜成人免费电影| 亚洲免费成人av| 中文字幕不卡一区| 久久久另类综合| 日韩精品一区二区三区四区视频 | 国产成人激情av| 偷拍自拍另类欧美| 亚洲精品中文在线影院| 中文幕一区二区三区久久蜜桃| 日韩欧美国产三级| 6080日韩午夜伦伦午夜伦| 色偷偷久久人人79超碰人人澡| 盗摄精品av一区二区三区| 精品一区二区三区在线观看国产| 丝袜亚洲另类欧美| 亚洲v日本v欧美v久久精品| 亚洲美女屁股眼交| 国产精品狼人久久影院观看方式| 久久久.com| 国产色一区二区| 26uuu成人网一区二区三区| 欧美一区二区三区四区五区| 欧美日韩成人综合在线一区二区| 色偷偷88欧美精品久久久| 色综合一区二区| 色欧美乱欧美15图片| 色综合色综合色综合色综合色综合 | www.综合网.com| 国产99精品视频| 国产不卡视频一区| jlzzjlzz亚洲女人18| 成人午夜精品在线| 一本到不卡精品视频在线观看| 99久久国产综合精品女不卡| av在线综合网| 欧美性猛片aaaaaaa做受| 欧美三区在线视频| 欧美一区二区三区四区视频| 日韩欧美亚洲另类制服综合在线 | 色婷婷亚洲精品| 欧美日韩激情一区二区三区| 欧美日韩国产综合草草| 9191久久久久久久久久久| 在线播放亚洲一区| 日韩欧美一级二级三级久久久| 精品日韩一区二区三区| 国产色综合久久| 一区二区三区日韩精品| 天天做天天摸天天爽国产一区| 日本人妖一区二区| 国产成人鲁色资源国产91色综| hitomi一区二区三区精品| 日本韩国一区二区| 日韩一区二区三区视频在线观看 | 精品视频一区三区九区| 欧美高清视频不卡网| 26uuu精品一区二区| 亚洲精品中文字幕乱码三区| 亚洲18色成人| 国产精品77777| 在线这里只有精品| 精品三级在线看| 国产精品国产自产拍在线| 亚洲福利视频导航| 国模大尺度一区二区三区| 99久久精品国产导航| 欧美综合视频在线观看| 欧美一区二区人人喊爽| 国产精品理伦片| 另类小说综合欧美亚洲| 99久久久无码国产精品| 91麻豆精品国产91| 久久久久久夜精品精品免费| 亚洲欧美日韩国产中文在线| 日本午夜精品一区二区三区电影| 国产老妇另类xxxxx| 欧美视频在线播放| 久久综合国产精品| 亚洲国产精品尤物yw在线观看| 亚洲成人资源在线| 国产成人av在线影院| 欧美日韩国产中文| 成人欧美一区二区三区| 精品无码三级在线观看视频| 97精品国产露脸对白| 337p粉嫩大胆色噜噜噜噜亚洲| 亚洲欧美日韩国产另类专区 | 国产成人亚洲综合a∨婷婷| 制服丝袜国产精品| 一区二区三区四区不卡视频| 国产曰批免费观看久久久| 欧美性色黄大片| 亚洲精品网站在线观看| 国产福利一区二区| 精品国产一区二区三区四区四| 亚洲一区二区偷拍精品| 国产成a人无v码亚洲福利| 欧美一区二区免费视频| 午夜精品久久久久久| 91麻豆国产精品久久| 国产精品欧美精品| 国产传媒一区在线| 欧美大片国产精品| 青青青爽久久午夜综合久久午夜| 久久久综合激的五月天| 麻豆国产91在线播放| 欧美日本一区二区三区四区 | 欧美一级欧美一级在线播放| 亚洲一区在线视频观看| 色噜噜狠狠色综合欧洲selulu| 国产精品久久看| 国产 欧美在线| 欧美激情一区二区在线| 国产成人丝袜美腿| 久久精品一级爱片| 成人亚洲精品久久久久软件| 国产精品网站在线观看| 国产91露脸合集magnet | 欧美一区二区在线免费播放| 亚洲成人激情社区| 宅男在线国产精品| 蜜桃在线一区二区三区| 精品久久一区二区| 国产激情精品久久久第一区二区| 欧美一区二区成人| 另类中文字幕网| 久久精品欧美一区二区三区不卡 | 午夜视频一区二区三区| 国产一本一道久久香蕉| 国产麻豆精品95视频| 奇米色777欧美一区二区| 日本欧美久久久久免费播放网| 中文字幕一区二区三区在线不卡| 2021久久国产精品不只是精品| 国产麻豆精品在线| 免费成人结看片| 久久影音资源网| 成人久久视频在线观看| 亚洲欧美一区二区三区极速播放| 色综合激情五月| 日韩在线一二三区| 亚洲精品在线一区二区| 成人免费看片app下载| 亚洲一区在线观看免费| 日韩免费观看2025年上映的电影| 国产精品911| 香蕉成人伊视频在线观看| 精品国产人成亚洲区| www.成人在线|