📄 managerolesadmin.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 + -