⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 managerolesadmin.cs

📁 本系统是在asp版《在线文件管理器》的基础上设计制作
💻 CS
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
//     Copyright (c) Telligent Systems Corporation.  All rights reserved.
// </copyright> 
//------------------------------------------------------------------------------

using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using CommunityServer;
using CommunityServer.Components;


namespace CommunityServer.Controls {

	public class ManageRolesAdmin : TemplatedWebControl {

		#region Child Controls

		Repeater RoleRepeater;

		#endregion

		#region Skin


		protected override void AttachChildControls() {

			RoleRepeater = (Repeater)FindControl( "RoleRepeater" );

			InitializeChildControls();
		}

		private void InitializeChildControls() {
			RoleRepeater.ItemDataBound += new RepeaterItemEventHandler(RoleRepeater_ItemDataBound);
			RoleRepeater.ItemCommand += new RepeaterCommandEventHandler(RoleRepeater_ItemCommand);
		}

		#endregion

		protected override void OnLoad(EventArgs e) {
			if ( !Page.IsPostBack ) {
				this.DataBind();
			}
			base.OnLoad( e );
		}

		public override void DataBind(){
			base.DataBind();

			BindRoles();
		}

		private void BindRoles() {
			RoleRepeater.DataSource = Roles.GetRoles(0, false, IsEdit );
			RoleRepeater.DataBind();
		}

		private void RoleRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) {
			Role dataItem = e.Item.DataItem as Role;

			switch( e.Item.ItemType ) {
				case ListItemType.Item:
				case ListItemType.AlternatingItem:

					HyperLink RoleLink = (HyperLink)e.Item.FindControl( "RoleLink" );
					Label RoleDescription = (Label)e.Item.FindControl( "RoleDescription" );
					HyperLink MembersLink = (HyperLink)e.Item.FindControl( "MembersLink" );

					Boolean RoleIsBuiltIn = Roles.IsBuiltInRole(dataItem.Name);
					
					RoleLink.NavigateUrl = Globals.GetSiteUrls().AdminRoleEdit( dataItem.RoleID );
					RoleLink.Text = dataItem.Name;

					RoleDescription.Text = dataItem.Description;

					MembersLink.Text = ResourceManager.GetString( "Role_ViewMembers" );
					MembersLink.NavigateUrl = Globals.GetSiteUrls().UserRoles( dataItem.RoleID.ToString() );

					break;
				case ListItemType.Footer:

					Button CreateNewRole = (Button)e.Item.FindControl( "CreateNewRole" );
					CreateNewRole.Text = ResourceManager.GetString( "Create" );

					break;
			}
		}
		private void RoleRepeater_ItemCommand(object source, RepeaterCommandEventArgs e) {
			if ( e.CommandName == "Create" ) {
				CreateRole( e );
			}
		}

        private void Loop(Control cx)
        {
            Context.Response.Write("C: " + cx.ID + " T:" + cx.GetType().ToString() + "<br>");

            if(!cx.HasControls())
                return;


            foreach(Control c in cx.Controls)
            {
                Loop(c);
            }
        }

		protected virtual void CreateRole( RepeaterCommandEventArgs e ) {
			TextBox name = (TextBox)e.Item.FindControl("NewRoleName");

            Roles.AddRole(name.Text);
			IsEdit = true;

			BindRoles();
		}

		private bool _isEdit = false;
		protected virtual Boolean IsEdit 
		{
			get 
			{
				return _isEdit;
			}
			set 
			{
				_isEdit = value;
			}
		}

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -