forums_forum.aspx.cs

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

CS
437
字号
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 的摘要说明。
	/// </summary>
	public class forums_forum : BDStudioBase.FormBase
	{
		protected System.Web.UI.WebControls.Button cbAdd;
		protected System.Web.UI.WebControls.Button cbEdit;
		protected System.Web.UI.WebControls.Button cbDelete;
		protected System.Web.UI.WebControls.Button cbSet;
		protected System.Web.UI.WebControls.Button cbReturn;
		protected System.Web.UI.WebControls.Label Lab_title;
		protected System.Web.UI.WebControls.ListBox listCat;
		protected System.Web.UI.WebControls.DataGrid dbGridMain1;
		protected System.Web.UI.WebControls.Label labMessage1;
		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;

		int ColumnCount=7;
		string m_num="79";
		protected System.Web.UI.WebControls.Label labPage2;
		private COM_ForumForum COM_ForumForum=new COM_ForumForum();
		private COM_DropDs drop=new COM_DropDs();
		COM_NumToChina COM_NumToChina=new COM_NumToChina();

		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			this.o_str_FormName="forums_forum";
			this.o_str_FormUrl="forums_forum.aspx";
			this.o_str_InputFile1="forums_forum_input.aspx";
			this.o_str_ModifyFile1="forums_forum_edit.aspx";
			this.o_str_DisplayFile1 = "forums_forum_display.aspx";
			o_str_Pk1="forum_id";
			this.o_str_FormStatusData=this.GetValueFromUserLog(this.o_str_FormName);

			if(!Page.IsPostBack)
			{
				Session["PageNum1"]=0;							
				Session["dv1"]=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["as_edit"]=arr_window_value[1];
					Session["as_delete"]=arr_window_value[2];
					Session["i_sort"]=arr_window_value[3];
					Session["as_set"]=arr_window_value[4];
					Session["SelectIndex"]=arr_window_value[5];
					UserLogClose(this.o_str_FormName);//关闭记录
				}
				else
				{
					Session["as_edit"]="0";
					Session["as_delete"]="0";
					Session["i_sort"]="0";
					Session["as_set"]="0";
					Session["SelectIndex"]="0";
				}
				this.listCat.DataSource=drop.DsForumCategory("","");
				this.listCat.DataTextField = "cat_name";
				this.listCat.DataValueField = "cat_id";
				this.listCat.DataBind();
				this.listCat.SelectedIndex=0;
				Session["list1"]=this.listCat.SelectedIndex.ToString();
				Session["list2"]=this.listCat.SelectedIndex.ToString();

				string[] strFieldValue = {m_num,"dbGridMain1",this.listCat.SelectedItem.Value};
				this.o_ds_FormData = this.COM_ForumForum.DsMainListForAll(strFieldValue);
				//this.o_ds_FormData=this.COMInterface.DsInterfaceData(m_num,"dbGridMain1");//生成填入dbGridMain1的数据集
				this.DataRead(this.o_ds_FormData,"dv1");

			}
			Session["list1"]=this.listCat.SelectedIndex.ToString();				
			if((string)Session["list1"]!=(string)Session["list2"])
			{
				string[] strFieldValue = {m_num,"dbGridMain1",this.listCat.SelectedItem.Value};
				this.o_ds_FormData = this.COM_ForumForum.DsMainListForAll(strFieldValue);
				this.DataRead(this.o_ds_FormData,"dv1");
				Session["list2"]=Session["list1"];
			}
			FormInit();	//填充dbGridMain1数据
		}

		#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.cbAdd.Click += new System.EventHandler(this.cbAdd_Click);
			this.cbEdit.Click += new System.EventHandler(this.cbEdit_Click);
			this.cbDelete.Click += new System.EventHandler(this.cbDelete_Click);
			this.cbSet.Click += new System.EventHandler(this.cbSet_Click);
			this.cbReturn.Click += new System.EventHandler(this.cbReturn_Click);
			this.dbGridMain1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dbGridMain1_ItemCommand);
			this.dbGridMain1.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.dbGridMain1_SortCommand);
			this.dbGridMain1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dbGridMain1_ItemDataBound);
			this.dbGridMain1.SelectedIndexChanged += new System.EventHandler(this.dbGridMain1_SelectedIndexChanged);
			this.linkbJump1.Click += new System.EventHandler(this.linkbJump1_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion
		private void FormInit()
		{
			DataView dvdata;
			if(Session["dv1"]!=null)
			{
				dvdata=(DataView)Session["dv1"];
				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((string)Session["as_edit"]=="1")
			{
				dbGridMain1.Columns[item_cou+1].Visible=true;
			}
			else
			{
				dbGridMain1.Columns[item_cou+1].Visible=false;
			}
			if((string)Session["as_delete"]=="1")
			{
				dbGridMain1.Columns[item_cou+2].Visible=true;
			}
			else
			{
				dbGridMain1.Columns[item_cou+2].Visible=false;
			}
			if((string)Session["as_set"]=="1")
			{
				dbGridMain1.Columns[item_cou+3].Visible=true;
			}
			else
			{
				dbGridMain1.Columns[item_cou+3].Visible=false;
			}
		}
		private void SaveStatus()
		{
			this.o_str_FormStatusData=this.dbGridMain1.CurrentPageIndex.ToString()+","+(string)Session["as_edit"]+","+(string)Session["as_delete"]+","+(string)Session["i_sort"]+","+(string)Session["as_set"]+","+(string)Session["SelectIndex"];
			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;
			}
			//记录当前页
			Session["PageNum1"]=PageNum;
			this.dbGridMain1.CurrentPageIndex = PageNum;
			this.dbGridMain1.DataBind();
			this.PageShow();
			this.FormInit();
		}

		private void cbAdd_Click(object sender, System.EventArgs e)
		{
			/*增加按钮事件*/
			SaveStatus();
			this.Param_Open("forums_forum_input");
			this.Param_set("as_catid",this.listCat.SelectedItem.Value);
			this.CreatUserLogParentWindow("forums_forum_input",this.o_str_FormUrl);//建立子窗口的父窗口数据值
			Response.Redirect(this.o_str_InputFile1);
		
		}

		private void cbEdit_Click(object sender, System.EventArgs e)
		{
			Session["as_edit"]="1";
			Session["as_delete"]="0";
			Session["as_set"]="0";
			if(this.dbGridMain1.Columns[item_cou+1].Visible==false)
			{
				this.dbGridMain1.Columns[item_cou+1].Visible=true;
			}
			if(this.dbGridMain1.Columns[item_cou+2].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+2].Visible=false;
			}
			if(this.dbGridMain1.Columns[item_cou+3].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+3].Visible=false;
			}
		
		}

		private void cbDelete_Click(object sender, System.EventArgs e)
		{
			/*修改按钮事件*/
			Session["as_edit"]="0";
			Session["as_delete"]="1";
			Session["as_set"]="0";
			if(this.dbGridMain1.Columns[item_cou+2].Visible==false)
			{
				this.dbGridMain1.Columns[item_cou+2].Visible=true;
			}
			if(this.dbGridMain1.Columns[item_cou+1].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+1].Visible=false;
			}
			if(this.dbGridMain1.Columns[item_cou+3].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+3].Visible=false;
			}
	
		}

		private void cbSet_Click(object sender, System.EventArgs e)
		{
			Session["as_edit"]="0";
			Session["as_delete"]="0";
			Session["as_set"]="1";
			if(this.dbGridMain1.Columns[item_cou+2].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+2].Visible=false;
			}
			if(this.dbGridMain1.Columns[item_cou+1].Visible==true)
			{
				this.dbGridMain1.Columns[item_cou+1].Visible=false;
			}
			if(this.dbGridMain1.Columns[item_cou+3].Visible==false)
			{
				this.dbGridMain1.Columns[item_cou+3].Visible=true;
			}
		}

		private void cbReturn_Click(object sender, System.EventArgs e)
		{
			Response.Redirect(this.o_str_FormUrl);
		}
		private void linkbJump1_Click(object sender, System.EventArgs e)
		{
			if (this.txtPageNum1.Text != string.Empty && this.txtPageNum1.Text != null)
			{
				int pagenum = (Int32.Parse(this.txtPageNum1.Text)-1);
				if ( pagenum > (this.dbGridMain1.PageCount-1))
				{
					this.dbGridMain1.CurrentPageIndex = (this.dbGridMain1.PageCount-1);
				}
				else
				{
					this.dbGridMain1.CurrentPageIndex = pagenum;
				}
				Session["PageNum1"]=this.dbGridMain1.CurrentPageIndex;
				
				this.dbGridMain1.DataBind();
				this.PageShow();
				this.FormInit();
			}
		}

		private void dbGridMain1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
		{
			if(e.CommandName == "setDepartment")
			{
				this.Param_Open("forums_forum_setDepartment");
				this.Param_set("as_pk",e.Item.Cells[1].Text);
				this.Param_set("as_forumname",e.Item.Cells[4].Text);
				this.Param_set("as_department",e.Item.Cells[2].Text);
				SaveStatus();
				this.CreatUserLogParentWindow("forums_forum_setDepartment",this.o_str_FormUrl);//建立子窗口的父窗口数据值
				Response.Redirect("forums_forum_setDepartment.aspx");
			}
			if(e.CommandName == "setsche")
			{
				this.Param_Open("forums_forum_setsche");
				this.Param_set("as_pk",e.Item.Cells[1].Text);
				this.Param_set("as_forumname",e.Item.Cells[4].Text);
				this.Param_set("as_schema",e.Item.Cells[3].Text);
				SaveStatus();
				this.CreatUserLogParentWindow("forums_forum_setsche",this.o_str_FormUrl);//建立子窗口的父窗口数据值
				Response.Redirect("forums_forum_setsche.aspx");
			}
			//添加编辑脚本
			if(e.CommandName == "edit")
			{
				string sSendId="";
				DataView dvdata=(DataView)Session["dv1"];
				foreach(DataRow row in dvdata.Table.Rows)
				{
					this.COMGfunction.StringAdd(ref sSendId,"",row["forum_id"].ToString(),",");
				}

				this.Param_Open("forums_forum_edit");
				this.Param_set("as_pk",e.Item.Cells[1].Text);
				this.Param_set("as_sendid",sSendId);

				SaveStatus();
				this.CreatUserLogParentWindow("forums_Forum_edit",this.o_str_FormUrl);//建立子窗口的父窗口数据值
				Response.Redirect(this.o_str_ModifyFile1);
			}
			if(e.CommandName=="delete")
			{
				string strSql = string.Format("{0} = '{1}'",o_str_Pk1,e.Item.Cells[1].Text);
				string sReturn = string.Empty;
				this.COM_ForumForum.DeleteData(strSql,ref sReturn);
				string[] strFieldValue = {m_num,"dbGridMain1",this.listCat.SelectedItem.Value};
				this.o_ds_FormData = this.COM_ForumForum.DsMainListForAll(strFieldValue);
				this.DataRead(this.o_ds_FormData,"dv1");
				if(this.o_ds_FormData.Tables[0].Rows.Count>0)
				{
					this.dbGridMain1.SelectedIndex=0;
				}
				SaveStatus();
				FormInit();
				this.labMessage1.Text = sReturn;
			}
			//添加删除脚本
			if(e.CommandName == "close")
			{
				SaveStatus();
				
			}
			//添加详细脚本
			
			if(e.CommandName == "detail")
			{
				/*取当前行数和总行数,用于传递到细节界面显示条数*/
				string sSendId="";
				DataView dvdata=(DataView)Session["dv1"];
				foreach(DataRow row in dvdata.Table.Rows)
				{
					this.COMGfunction.StringAdd(ref sSendId,"",row["forum_id"].ToString(),",");
				}

				this.Param_Open("forums_forum_display");
				this.Param_set("as_pk",e.Item.Cells[1].Text);
//				string str1=e.Item.Cells[1].Text;
				this.Param_set("as_sendid",sSendId);
				//string str=sSendId;

				SaveStatus();
				this.CreatUserLogParentWindow("forums_forum_display",this.o_str_FormUrl);//建立子窗口的父窗口数据值
				Response.Redirect(this.o_str_DisplayFile1);
			}
		}

		private void dbGridMain1_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
		{
			DataView dvdata=(DataView)Session["dv1"];
			this.DbGridSort(this.dbGridMain1,e,ref dvdata);
		}

		private void dbGridMain1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if(e.Item.FindControl("linkbDelete")!=null)
			{
				((LinkButton) e.Item.FindControl("linkbDelete")).Attributes.Add("onClick", "return confirm('您确实删除这条记录吗?');");
			}
			//Response.Write(e.Item.Cells[6].Text);
			e.Item.Cells[6].Text=this.COM_NumToChina.GetAccountEmp(e.Item.Cells[6].Text);
		
		}

		private void dbGridMain1_SelectedIndexChanged(object sender, System.EventArgs e)
		{
//			Session["SelectIndex1"]=this.dbGridMain1.SelectedIndex;
//			this.FormInit();
		}

		
	}
}

⌨️ 快捷键说明

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