forums_forum_stat.aspx.cs

来自「ASP.NET的一些开发实例,有论坛管理系统等」· CS 代码 · 共 289 行

CS
289
字号
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;

namespace WhiteForum.forums
{
	/// <summary>
	/// forums_forum_stat 的摘要说明。
	/// </summary>
	public class forums_forum_stat : BDStudioBase.FormBase
	{
		protected System.Web.UI.WebControls.RadioButton RB_forums;
		protected System.Web.UI.WebControls.RadioButton RB_topics;
		protected System.Web.UI.WebControls.TextBox TB_forums;
		protected System.Web.UI.WebControls.TextBox TB_topics;
		protected System.Web.UI.WebControls.LinkButton linkbForums;
		protected System.Web.UI.WebControls.LinkButton linkbTopics;
		protected System.Web.UI.WebControls.DataGrid dbGridMain1;
		protected System.Web.UI.WebControls.LinkButton linkbPrev1;
		protected System.Web.UI.WebControls.Label labPage1;
		protected System.Web.UI.WebControls.LinkButton linkbNext1;
		protected System.Web.UI.WebControls.LinkButton linkbJump1;
		protected System.Web.UI.WebControls.TextBox txtPageNum1;
		protected System.Web.UI.WebControls.Label labPage2;
		protected System.Web.UI.WebControls.Label Lb_forums;
		protected System.Web.UI.WebControls.Label Lb_topics;
		protected System.Web.UI.WebControls.TextBox tb_endt;
		protected System.Web.UI.WebControls.TextBox tb_bagint;
		protected System.Web.UI.WebControls.Label lb_bagint;
		protected System.Web.UI.WebControls.Label lb_endt;
		protected System.Web.UI.WebControls.Panel Pl_forums;
		protected System.Web.UI.WebControls.Panel Pl_topics;
		

		private COM_ForumTopics COM_ForumTopics=new COM_ForumTopics() ;
		string m_num="105";
		int ColumnCount=1;
		private string strint="";

		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			this.o_str_Pk1="forum_id";
			this.o_str_Pk2="topic_id";
			

//			Session["PageNum1"]=0;
//			Session["PageNum2"]=0;
			this.o_str_FormStatusData=this.GetValueFromUserLog(this.o_str_FormName);

				if(!Page.IsPostBack)
				{
					Session["PageNum1"]=0; 
					Session["PageNum2"]=0;
					Session["dv1"]=null;
					Session["dv2"]=null;

					

					if (this.o_str_FormStatusData!="W")
					{
						string[] arr_window_value=this.o_str_FormStatusData.Split(new char[]{','});
						Session["PageNum1"]=Int32.Parse(arr_window_value[0]); 
						Session["dv1"]=Int32.Parse(arr_window_value[1]);
						Session["dv2"]=Int32.Parse(arr_window_value[2]);
						UserLogClose(this.o_str_FormName);//关闭记录
					}
				}

				if(this.RB_forums.Checked==true)
				{
					Session["dv2"]=null;
					this.Pl_forums.Visible=true;
					this.Pl_topics.Visible=false;
                    
					if(Session["dv1"]==null)
					{
						this.o_ds_FormData = this.COM_ForumTopics.DsForum("","");
						this.DataRead(this.o_ds_FormData,"dv1");
					}
					strint="1";
				}
				if(this.RB_topics.Checked==true)
				{
					Session["dv1"]=null;
					this.Pl_forums.Visible=false;
					this.Pl_topics.Visible=true;

					if(Session["dv2"]==null)
					{
						string[] strValue={"","","",""};
						this.o_ds_FormData=this.COM_ForumTopics.DsSearch(strValue);
						this.DataRead(this.o_ds_FormData,"dv2");
					}
					strint="2";
				}
			
			this.FormInit(strint);
		}

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

		}
		#endregion
		private void FormInit(string strtype)
		{
			DataView dvdata;
			if(strtype=="1")
			{
				if(Session["dv1"]!=null)
				{
					dvdata=(DataView)Session["dv1"];
					this.DbGridInit(this.dbGridMain1,this.COMInterface.DsInterfaceTitle(m_num,"dbGridMain1"),ColumnCount,o_str_Pk1,ref dvdata);
					this.dbGridMain1.DataSource=dvdata;
					this.dbGridMain1.CurrentPageIndex=0;
					this.dbGridMain1.DataBind();
					if(((int)Session["PageNum1"]+1)>this.dbGridMain1.PageCount)
					{
						if((this.dbGridMain1.Items.Count%this.dbGridMain1.PageSize)==0)
						{
							Session["PageNum1"]= (int)Session["PageNum1"]-1;
						}
					}
					this.o_int_PageNum=(int)Session["PageNum1"];
					this.dbGridMain1.CurrentPageIndex=this.o_int_PageNum;
					this.dbGridMain1.DataBind();
					//this.DbGridInit(this.dbGridMain1,this.COMInterface.DsInterfaceTitle(m_num,"dbGridMain1"),ColumnCount,o_str_Pk1,ref dvdata);
					this.PageShow();
				}
			}
			if(strtype=="2")
				if(Session["dv2"]!=null)
				{
					dvdata=(DataView)Session["dv2"];
					//this.DbGridInit(this.dbGridMain1,this.COMInterface.DsInterfaceTitle(m_num,"dbGridMain2"),ColumnCount,o_str_Pk2,ref dvdata);
					this.dbGridMain1.DataSource=dvdata;
					this.dbGridMain1.CurrentPageIndex=0;
					this.dbGridMain1.DataBind();
					if(((int)Session["PageNum2"]+1)>this.dbGridMain1.PageCount)
					{
						if((this.dbGridMain1.Items.Count%this.dbGridMain1.PageSize)==0)
						{
							Session["PageNum2"]= (int)Session["PageNum2"]-1;
						}
					}
					this.o_int_PageNum=(int)Session["PageNum2"];
					this.dbGridMain1.CurrentPageIndex=this.o_int_PageNum;
					this.dbGridMain1.DataBind();
					this.DbGridInit(this.dbGridMain1,this.COMInterface.DsInterfaceTitle(m_num,"dbGridMain2"),ColumnCount,o_str_Pk2,ref dvdata);
					this.PageShow();
				}
		}

		private void SaveStatus()
		{
			this.o_str_FormStatusData=this.dbGridMain1.CurrentPageIndex.ToString()+","+Session["dv1"]+","+Session["dv2"];
			this.SaveFormStatus(this.o_str_FormName,this.o_str_FormStatusData);
		}

		private void PageShow()
		{
			if(dbGridMain1.PageCount>1)
			{
				this.linkbNext1.Visible=true;
				this.linkbPrev1.Visible=true;
				this.labPage1.Visible=true;
				this.labPage2.Visible = true;
				this.txtPageNum1.Visible = true;
				this.linkbJump1.Visible = true;
				this.PageLabelShow(ref this.labPage1,this.dbGridMain1.CurrentPageIndex+1,this.dbGridMain1.PageCount);
			}
			else
			{
				this.linkbNext1.Visible=false;
				this.linkbPrev1.Visible=false;
				this.labPage1.Visible=false;
				this.labPage2.Visible = false;
				this.txtPageNum1.Visible = false;
				this.linkbJump1.Visible = false;
			}
		}

		/*翻页按钮事件*/
		protected void PagerButtonClick(object sender, System.EventArgs e)
		{
			int PageNum=this.dbGridMain1.CurrentPageIndex;
			string arg=((LinkButton)sender).CommandArgument;
			switch(arg)
			{
				case("prev"):
					if(PageNum>0)
						PageNum--;
					break;
				case("next"):
					if(PageNum<(this.dbGridMain1.PageCount-1))
						PageNum++;
					break;
			}
			//记录当前页
			if(this.RB_forums.Checked==true)
			{
				Session["PageNum1"]=PageNum;
				strint="1";
			}
			if(this.RB_topics.Checked==true)
			{
				Session["PageNum2"]=PageNum;
				strint="2";
			}
			this.dbGridMain1.CurrentPageIndex = PageNum;
			this.dbGridMain1.DataBind();
//			this.PageShow();
			this.FormInit(strint);
		}

		private void linkbForums_Click(object sender, System.EventArgs e)
		{
			this.o_ds_FormData = this.COM_ForumTopics.DsForum("",this.TB_forums.Text.Trim());
			this.DataRead(this.o_ds_FormData,"dv1");
			Session["PageNum1"]=0;
			this.FormInit("1");
		}

		private void linkbTopics_Click(object sender, System.EventArgs e)
		{
			string[] strValue={this.tb_bagint.Text,this.tb_endt.Text,this.TB_topics.Text,""};
			this.o_ds_FormData=this.COM_ForumTopics.DsSearch(strValue);
			this.DataRead(this.o_ds_FormData,"dv2");
			Session["PageNum2"]=0;
			this.FormInit("2");
		}

		private void linkbJump1_Click(object sender, System.EventArgs e)
		{
			if (this.txtPageNum1.Text != string.Empty && this.txtPageNum1.Text != null)
			{
				int pagenum = int.Parse(this.txtPageNum1.Text);
				if ( pagenum > (this.dbGridMain1.PageCount-1))
				{
					this.dbGridMain1.CurrentPageIndex = (this.dbGridMain1.PageCount-1);
				}
				this.dbGridMain1.CurrentPageIndex = pagenum-1;
				//this.dbGridMain1.DataBind();
				//this.PageShow();
				//记录当前页
				if(this.RB_forums.Checked==true)
				{
					Session["PageNum1"]=this.dbGridMain1.CurrentPageIndex;
					strint="1";
				}
				if(this.RB_topics.Checked==true)
				{
					Session["PageNum2"]=this.dbGridMain1.CurrentPageIndex;
					strint="2";
				}
				this.FormInit(strint);
				//SaveStatus();
			}
		}
	
	}
}

⌨️ 快捷键说明

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