art.ascx.cs

来自「基于Asp.net、MS sql sever 2000、C# 论坛系统源码」· CS 代码 · 共 113 行

CS
113
字号
namespace Stella.Web.Controls
{
	using System;
	using System.Data;
	using System.Drawing;
	using System.Web;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;

	/// <summary>
	///		Art 的摘要说明。
	/// </summary>
	public class Art : System.Web.UI.UserControl
	{
		protected System.Web.UI.WebControls.Label uname;
		protected System.Web.UI.WebControls.Label signature;
		protected System.Web.UI.WebControls.Label artSum;
		protected System.Web.UI.WebControls.Label regdate;
		protected System.Web.UI.WebControls.Label lv;
		protected System.Web.UI.WebControls.Label content;
		protected System.Web.UI.WebControls.Label addedDate;
		protected System.Web.UI.WebControls.HyperLink profile;
		protected System.Web.UI.WebControls.HyperLink email;
		protected System.Web.UI.WebControls.HyperLink hp;
		protected System.Web.UI.WebControls.Image qq;
		protected System.Web.UI.WebControls.HyperLink edit;
		protected System.Web.UI.WebControls.Label num;

		private void Page_Load(object sender, System.EventArgs e)
		{
			
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		///		设计器支持所需的方法 - 不要使用代码编辑器
		///		修改此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private Stella.Model.Art art;
		public Stella.Model.Art Value
		{
			set
			{
				art=value;
				//在这里进行初始化,因为换页、回复等操作会postback
				//这个时候会先引发load,从而把空值绑到控件
				setUp();
			}
			get{return art;}
		}

		private void setUp()
		{
				this.uname.Text=art.AddedMember.Name;
				this.signature.Text=art.AddedMember.Signature;
				this.artSum.Text=art.AddedMember.ArtCount.ToString();
				this.regdate.Text=art.AddedMember.RegDate.ToString();
				this.lv.Text=art.AddedMember.Lv.ToString();
				this.content.Text=art.Content;
				this.addedDate.Text=art.AddedDate.ToString();;
				this.profile.NavigateUrl=string.Format("../pages/profile.aspx?mname={0}",art.AddedMember.Name);
				this.email.NavigateUrl=string.Format("mailto:{0}",art.AddedMember.Email);
				this.qq.ToolTip="发表者的qq : "+art.AddedMember.Qq;
				this.num.Text="no."+art.Number;

			this.edit.NavigateUrl=string.Format("../pages/edit.aspx?num={0}&aid={1}&tid={2}",art.Number,art.Aid,int.Parse(Request["tid"]));

			edit.Visible=( Context.User.Identity.Name==art.AddedMember.Name || isManager(int.Parse(Request["tid"])) );

		}

		//这个方法是从container复制过来的 :)

		/// <summary>
		/// 指示是否是斑竹
		/// </summary>
		/// <param name="themeId">版块编号</param>
		/// <returns>是否斑竹</returns>
		protected bool isManager(int themeId)
		{
			if(this.Request.IsAuthenticated)
			{
				if(Context.User.IsInRole("manager"))
				{
					if(Session["user"]!=null)
					{
						Model.Member member=(Model.Member)Session["user"];
						if(member.Manage==themeId)
							return true;
					}
				}
			}
			return false;
		}
	}
}

⌨️ 快捷键说明

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