⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filelist.aspx.cs

📁 C#2005 实例源代码
💻 CS
字号:
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 MyOA.BusinessLogicLayer;
using MyOA.DataAccessHelper;
using MyOA.CommonComponent;

namespace MyOA.Web
{
	/// <summary>
	/// FileList 的摘要说明。
	/// </summary>
	public partial class FileList : System.Web.UI.Page
	{
	
		/// <summary>
		/// 页面加载事件
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		protected void Page_Load(object sender, System.EventArgs e)
		{
			if(!Page.IsPostBack)
			{
				InitData();
				Query();
			}
		}

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

		}
		#endregion
		
		/// <summary>
		/// 初始化页面数据
		/// </summary>
		private void InitData()
		{
			//初始化:类别下拉框中的数据,用Department表中的数据进行绑定
			DataTable dt= FileStatus.Query(new Hashtable());
			DropDownListFileStatus.Items.Add(new ListItem("全部",""));
			foreach(DataRow dr in dt.Rows)
			{
				DropDownListFileStatus.Items.Add(new ListItem(dr["FileStatusName"].ToString(),dr["FileStatusId"].ToString()));
			}
		}

		/// <summary>
		/// 根据页面上用户输入的查询条件,查询用户数据
		/// </summary>
		private void Query()
		{
			try
			{
				//初始化:DataGrid的数据源
				Hashtable andQueryItems=new Hashtable();
				andQueryItems.Add("FileTitle",TextBoxFileTitle.Text);
				if(DropDownListFileStatus.SelectedValue!="")
					andQueryItems.Add("[File].FileStatus",Convert.ToInt32(DropDownListFileStatus.SelectedValue));

				User user=new User();
				user.LoadData(Session["login_name"].ToString());
				Hashtable orQueryItems=new Hashtable();
				orQueryItems.Add("FromUserName",user.UserName);
				orQueryItems.Add("ToUserName",user.UserName);

				DataTable dt=File.Query(andQueryItems,orQueryItems);

				GV.DataSource=dt;
				GV.DataBind();

				//保存下拉框的选择项到ViewState数组对象
				ViewState.Add("DropDownListFileStatus",DropDownListFileStatus.SelectedValue);

				LabelPageInfo.Text = "查询结果(第"+(GV.PageIndex+1).ToString()+"页 共"+GV.PageCount.ToString()+"页)";
			}
			catch{}
		}

		/// <summary>
		/// 保持页面上所有下拉框的选项
		/// </summary>
		private void ResetQueryValue()
		{
			//状态
			foreach(ListItem Item in DropDownListFileStatus.Items)
			{
				if (Item.Value==ViewState["DropDownListFileStatus"].ToString())
					Item.Selected = true;
				else
					Item.Selected = false;
			}
		}
		
		/// <summary>
		/// 得到用户的选择
		/// </summary>
		/// <returns>用户选择公文的编号集合</returns>
        private ArrayList GetSelected()
        {
            ArrayList selectedItems = new ArrayList();
            foreach (GridViewRow row in GV.Rows)
            {
                if (((CheckBox)row.FindControl("chkSelected")).Checked)
                {
                    selectedItems.Add(Convert.ToString(row.Cells[1].Text));//公文ID
                }
            }
            return selectedItems;
        }
		
		/// <summary>
		/// “查询”按钮单击事件
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void ImageButtonQuery_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			Query();			//查询公文数据
			ResetQueryValue();	//恢复下拉框选择项
		}

		/// <summary>
		/// “详细信息”按钮单击事件
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void ImageButtonDetail_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			ArrayList selectedFiles=GetSelected();
			if(selectedFiles.Count!=1)
			{
				Response.Write("<Script Language=JavaScript>alert('请选择一个公文!');</Script>");
				return;
			}

			int fileId=Convert.ToInt32(selectedFiles[0].ToString());
			Response.Redirect("FileDetail.aspx?file_id="+fileId);
		}

		/// <summary>
		/// “删除”
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void ImageButtonDelete_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			User user=new User();
			user.LoadData(Session["login_name"].ToString());

			ArrayList selectedFiles=GetSelected();
			
			File file=new File();
			foreach(string fileId in selectedFiles)
			{
				file.LoadData(Convert.ToInt32(fileId));
				if(file.ToUserName!=user.UserName || file.FileStatusId==1)
				{
					Response.Write("<Script Language=JavaScript>alert('不能删除这个公文"+fileId.ToString()+",因为你没有权限,或者公文还没有被审阅!');</Script>");
					return;
				}
				File.Delete(Convert.ToInt32(fileId));
			}

			Query();
			ResetQueryValue();		
		}

        /// <summary>
        /// 翻页事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void GV_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GV.PageIndex = e.NewPageIndex;
            Query();
            ResetQueryValue();	//恢复下拉框选择项
        }
}
}

⌨️ 快捷键说明

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