📄 membersearch.aspx.cs
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
// Copyright (c) Telligent Systems Corporation. All rights reserved.
// </copyright>
//------------------------------------------------------------------------------
using System;
using System.Web.UI.WebControls;
using CommunityServer.Components;
using CommunityServer.ControlPanel.Controls;
using CommunityServer.ControlPanel.UI;
using CommunityServer.Controls;
using CA = ComponentArt.Web.UI;
using ResourceLabel = CommunityServer.ControlPanel.Controls.ResourceLabel;
using ResourceLinkButton = CommunityServer.ControlPanel.Controls.ResourceLinkButton;
using ResourceManager = CommunityServer.ControlPanel.Components.ResourceManager;
namespace CommunityServer.ControlPanel.Membership
{
/// <summary>
/// Summary description for MemberSearch.
/// </summary>
public class MemberSearch : BaseMembershipPage
{
override protected void OnInit(EventArgs e)
{
Grid1.PageIndexChanged += new CA.Grid.PageIndexChangedEventHandler(OnPageIndexChanged);
Grid1.SortCommand += new CA.Grid.SortCommandEventHandler(OnSortCommand);
Grid1.NeedRebind += new CA.Grid.NeedRebindEventHandler(OnNeedRebind);
Grid1.NeedDataSource += new CA.Grid.NeedDataSourceEventHandler(OnNeedDataSource);
this.PageList.SelectedIndexChanged +=new EventHandler(PageList_SelectedIndexChanged);
this.Load += new EventHandler(this.Page_Load);
base.OnInit(e);
}
#region Members
protected CA.Grid Grid1;
protected DropDownList PageList;
protected Modal Modal1;
protected UserSearch UserSearchControl;
protected ControlPanelSelectedNavigation SelectedNavigation1;
protected ContextMenu MemberContextMenu;
int recordCount = 0;
#endregion
private void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack && !this.IsCallBack)
{
Bind();
}
}
protected override void OnPreRender(EventArgs e)
{
string path = this.Request.Url.AbsolutePath.Substring(0, this.Request.Url.AbsolutePath.LastIndexOf('/') + 1);
MemberContextMenu.Menu.Items[2].ClientSideCommand = MemberContextMenu.Menu.Items[2].ClientSideCommand.Replace(path, "");
base.OnPreRender(e);
}
private void Bind()
{
CSContext context = CSContext.Current;
int ps = context.GetIntFromQueryString("ps", context.SiteSettings.MembersPerPage);
ListItem li = PageList.Items.FindByValue(ps.ToString());
if(li != null)
li.Selected = true;
Grid1.PageSize = Int32.Parse(PageList.SelectedValue);
UserSet users = BuildGridData();
Grid1.DataSource = users.Users;
this.recordCount = users.TotalRecords;
Grid1.DataBind();
Grid1.RecordCount = recordCount;
//Taken from the BaseGridControl Helper function - In the future this page should inherit from that base class
foreach(CA.GridColumn gc in Grid1.Levels[0].Columns)
{
if(gc.Visible)
{
gc.SortedDataCellCssClass = "SortedDataCell";
//Allows for mock resource manager calls in heading text
//eg HeadingText="ResourceManager.CP_Photos_GridCol_Name"
if(gc.HeadingText.StartsWith("ResourceManager."))
gc.HeadingText = ResourceManager.GetString(gc.HeadingText.Replace("ResourceManager.",""));
}
}
}
private UserSet BuildGridData()
{
CSContext context = CSContext.Current;
int pageSize = context.GetIntFromQueryString("ps", context.SiteSettings.MembersPerPage);
Grid1.PageSize = pageSize;
return UserSearchControl.GetUsersAndBindControl(Grid1.CurrentPageIndex, pageSize, Grid1.Sort);
}
#region Events
private void PageList_SelectedIndexChanged(object sender, EventArgs e)
{
string url = "{0}?tab={1}&su={2}&ps={3}&t={4}&se={5}&r={6}&s={7}&jc={8}&jd={9}&pc={10}&pd={11}&sb={12}&so={13}";
url = string.Format(url, Request.Path, Request.QueryString["tab"], Request.QueryString["su"], PageList.SelectedValue, Request.QueryString["t"], Request.QueryString["se"], Request.QueryString["r"], Request.QueryString["s"], Request.QueryString["jc"], Request.QueryString["jd"], Request.QueryString["pc"], Request.QueryString["pd"], Request.QueryString["sb"], Request.QueryString["so"]);
Response.Redirect(url);
}
public void OnPageIndexChanged(object sender, CA.GridPageIndexChangedEventArgs args)
{
Grid1.CurrentPageIndex = args.NewIndex;
}
public void OnSortCommand(object sender, CA.GridSortCommandEventArgs args)
{
Grid1.Sort = args.SortExpression;
}
public void OnNeedDataSource(object sender, EventArgs oArgs)
{
UserSet users = BuildGridData();
Grid1.DataSource = users.Users;
this.recordCount = users.TotalRecords;
}
private void InitializeComponent()
{
}
public void OnNeedRebind(object sender, EventArgs oArgs)
{
Grid1.DataBind();
Grid1.RecordCount = recordCount;
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -