theme.aspx.cs

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

CS
123
字号
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Stella.BusinessLogic;
using Stella.Model;
using Stella.Utility;
using Stella.Web.ProcessFlow;

namespace Stella.Web.Pages
{
	/// <summary>
	/// theme 的摘要说明。
	/// </summary>
	public class htheme : Container
	{
		protected Wuqi.Webdiyer.AspNetPager pager;
		protected System.Web.UI.WebControls.DataGrid topics;
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			if(!this.IsPostBack)
				setUp(1);
		}

		#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);
			this.topics.ItemDataBound+=new DataGridItemEventHandler(topics_ItemDataBound);
		}
		#endregion

		private void setUp(int pageNumber)
		{
			Stella.Utility.DebugHelper.CheckCondition(Request["tid"]!=null,"没有版块编号tid传入theme.aspx页");
			int tid=int.Parse(Request["tid"]);
			Theme tm;
			if(pageNumber==1)
			{
				tm=this.cC.GetCachedTopics(int.Parse(Request["tid"]));
			}
			else
			{
				tm=new Theme();
				tm.Tid=tid;
				Stella.BusinessLogic.ThemeLogic tl=new ThemeLogic();
				tl.FillWithTopics(tm,ConfigHelper.ThemeSize,pageNumber);
			}
			topics.DataSource=tm.Topics;
			topics.DataBind();

			this.topics.Columns[8].Visible=this.isManager(tid);
			this.topics.Columns[9].Visible=this.isManager(tid);

			setPager(this.themeCounter[tid].TopicSum,ConfigHelper.ThemeSize,pageNumber);
		}

		private void setPager(int count,int size,int  index)
		{
			pager.RecordCount=count;
			pager.PageSize=size;
			pager.CurrentPageIndex=index;
		}

		private void pager_PageChanged(object src, Wuqi.Webdiyer.PageChangedEventArgs e)
		{
			ViewState["page"]=e.NewPageIndex;
			setUp(e.NewPageIndex);
		}

		private void topics_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if(e.Item.ItemType==ListItemType.AlternatingItem || e.Item.ItemType==ListItemType.Item)
			{
				//主题连接
				HyperLink top=(HyperLink)e.Item.FindControl("top");
				top.NavigateUrl=string.Format("topic.aspx?tid={0}&top={1}",Request["tid"],e.Item.Cells[0].Text);
				//在新窗口中打开
				HyperLink newWin=(HyperLink)e.Item.FindControl("newWin");
				newWin.NavigateUrl=string.Format("topic.aspx?tid={0}&top={1}",Request["tid"],e.Item.Cells[0].Text);

				Stella.Model.Topic topic=(Stella.Model.Topic)e.Item.DataItem;
				//最后发表
				Label lr=(Label)e.Item.FindControl("lr");
				lr.Text=string.Format("<a href=\"profile.aspx?mname={0}\">{0}</a> &nbsp; &nbsp; {1}",topic.AddedMember,topic.AddedDate.ToString());

				//删除
				HyperLink del=(HyperLink)e.Item.FindControl("del");
				del.NavigateUrl=string.Format("delete.aspx?tid={0}&top={1}",Request["tid"],topic.Tid);
				del.Text="删";
				//置顶
				HyperLink up=(HyperLink)e.Item.FindControl("up");
				up.NavigateUrl=string.Format("up.aspx?tid={0}&top={1}&up={2}",Request["tid"],topic.Tid,topic.Up);
				if(topic.Up==0)
					up.Text="顶";
				else
					up.Text="落";
			}
		}

	}
}

⌨️ 快捷键说明

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