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

📄 manageapplication.aspx.cs

📁 一个采用VS2008+Sql2000开发的任务管理系统
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
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 BronzeMonkey.GeneralTaskList
{
	/// <summary>
	/// Summary description for ManageApplication.
	/// </summary>
	public partial class ManageApplication : System.Web.UI.Page
	{
		private enum PanelToDisplay { StatusPanel = 0, CategoryPanel = 1 }
		private enum EditMode { AddNew = 0, Edit = 1 }

	
		private UserInformation CurrentUser = new UserInformation();
		private BronzeMonkey.GeneralTaskList.TaskList tl = new BronzeMonkey.GeneralTaskList.TaskList();
		private string ConnectionString = String.Empty;
		private EditMode CategoryEditMode = EditMode.AddNew;
		private EditMode StatusEditMode = EditMode.AddNew;

		protected void Page_Load(object sender, System.EventArgs e)
		{
			this.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();
			
			if (ViewState["CategoryEditMode"] != null)
				this.CategoryEditMode = (EditMode)ViewState["CategoryEditMode"];
			
			if (ViewState["StatusEditMode"] != null)
				this.StatusEditMode = (EditMode)ViewState["StatusEditMode"];
					
			if (Session["CurrentUser"] == null)
				Response.Redirect("login.aspx");
			else
				CurrentUser = (UserInformation)Session["CurrentUser"];
			

			if (!Page.IsPostBack)
			{
				// Load the list of status types
				this.LoadStatusTypes();
				// Load the list of categories
				this.LoadCategories();
				
				pnlStatus.Visible = false;
				pnlCategory.Visible = false;

				this.lnkDeleteCategory.Attributes.Add(
					"onclick",
					@"return confirm (""Are you sure you want to delete this category?"");"
				);

				this.lnkDeleteStatus.Attributes.Add(
					"onclick",
					@"return confirm (""Are you sure you want to delete this status?"");"
				);

				this.imgDeleteCategory.Attributes.Add(
					"onclick",
					@"return confirm (""Are you sure you want to delete this category?"");"
				);

				this.imgDeleteStatus.Attributes.Add(
					"onclick",
					@"return confirm (""Are you sure you want to delete this status?"");"
				);
			}
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    

		}
		#endregion

		private void LoadStatusTypes()
		{
			SqlDataReader dr = tl.GetStatusList(this.CurrentUser);

			lstStatusTypes.Items.Clear();

			while( dr.Read() )
			{
				lstStatusTypes.Items.Add(new ListItem(dr["Description"].ToString(), dr["StatusID"].ToString()));
			}

			dr.Close();
		}

		private void LoadCategories()
		{
			SqlDataReader dr = tl.GetCategoryList(this.CurrentUser);

			lstCategories.Items.Clear();

			while( dr.Read() )
			{
				lstCategories.Items.Add(new ListItem(dr["Description"].ToString(), dr["CategoryID"].ToString()));
			}

			dr.Close();
		}

		private void EnablePanel(PanelToDisplay ThePanel)
		{
			pnlStatus.Visible = false;
			pnlCategory.Visible = false;

			switch (ThePanel) 
			{
				case PanelToDisplay.CategoryPanel:
					pnlCategory.Visible = true;
					break;
				case PanelToDisplay.StatusPanel:
					pnlStatus.Visible = true;
					break;
			}
		}

		protected void lnkAddStatusSave_Click(object sender, System.EventArgs e)
		{
			if( this.StatusEditMode == EditMode.AddNew)
			{
				int NewStatusID = StatusItem.AddStatusItem(txtStatusDescription.Text, txtStatusFontFlags.Text, this.ConnectionString);
				lstStatusTypes.Items.Add(new ListItem(txtStatusDescription.Text, NewStatusID.ToString()));
			}
			else if( this.StatusEditMode == EditMode.Edit)
			{
				StatusItem ThisStatus = StatusItem.GetStatusItem(
					Convert.ToInt32(lstStatusTypes.SelectedItem.Value), this.ConnectionString);
			
				ThisStatus.Description = txtStatusDescription.Text;
				ThisStatus.FontFlags = txtStatusFontFlags.Text;
				ThisStatus.Update(this.ConnectionString);
				lstStatusTypes.SelectedItem.Text = txtStatusDescription.Text;
			}

			pnlStatus.Visible = false;
		}

		protected void lnkAddStatusCancel_Click(object sender, System.EventArgs e)
		{
			pnlStatus.Visible = false;
		}

		protected void lnkAddStatus_Click(object sender, System.EventArgs e)
		{
			ViewState["StatusEditMode"] = EditMode.AddNew;
			txtStatusDescription.Text = String.Empty;
			txtStatusFontFlags.Text = String.Empty;
			EnablePanel(PanelToDisplay.StatusPanel);
		}

		protected void lnkAddCategory_Click(object sender, System.EventArgs e)
		{
			ViewState["CategoryEditMode"] = EditMode.AddNew;
			txtCategoryName.Text = String.Empty;
			txtIconUrl.Text = String.Empty;
			EnablePanel(PanelToDisplay.CategoryPanel);
		}

		protected void lnkEditStatus_Click(object sender, System.EventArgs e)
		{
			if (lstStatusTypes.SelectedItem == null) return;

			ViewState["StatusEditMode"] = EditMode.Edit;
			StatusItem ThisStatus = StatusItem.GetStatusItem(Convert.ToInt32(lstStatusTypes.SelectedItem.Value), this.ConnectionString);

			this.txtStatusDescription.Text = ThisStatus.Description;
			this.txtStatusFontFlags.Text = ThisStatus.FontFlags;

			EnablePanel(PanelToDisplay.StatusPanel);
		}

		protected void lnkDeleteStatus_Click(object sender, System.EventArgs e)
		{
			if (lstStatusTypes.SelectedItem == null) return;

			StatusItem.DeleteStatusItem(Convert.ToInt32(lstStatusTypes.SelectedItem.Value), this.ConnectionString);	
			lstStatusTypes.Items.Remove(lstStatusTypes.SelectedItem);
		}

		protected void lnkEditCategory_Click(object sender, System.EventArgs e)
		{
			if (lstCategories.SelectedItem == null) return;

			ViewState["CategoryEditMode"] = EditMode.Edit;
			CategoryItem ThisCategory = CategoryItem.GetCategoryItem(Convert.ToInt32(lstCategories.SelectedItem.Value), this.ConnectionString);
			this.txtCategoryName.Text = ThisCategory.Description;
			this.txtIconUrl.Text = ThisCategory.IconUrl;
			EnablePanel(PanelToDisplay.CategoryPanel);
		}

		protected void lnkDeleteCategory_Click(object sender, System.EventArgs e)
		{
			if (lstCategories.SelectedItem == null) return;

			CategoryItem.DeleteCategoryItem(Convert.ToInt32(lstCategories.SelectedItem.Value), this.ConnectionString);
			lstCategories.Items.Remove(lstCategories.SelectedItem);
		}

		protected void lnkAddCategorySave_Click(object sender, System.EventArgs e)
		{
			if( this.CategoryEditMode == EditMode.AddNew)
			{
				int NewCategoryID = CategoryItem.AddCategoryItem(txtCategoryName.Text, txtIconUrl.Text, this.ConnectionString);
				lstCategories.Items.Add(new ListItem(txtCategoryName.Text, NewCategoryID.ToString()));
			}
			else if( this.CategoryEditMode == EditMode.Edit)
			{
				CategoryItem ThisCategory = CategoryItem.GetCategoryItem(
					Convert.ToInt32(lstCategories.SelectedItem.Value), this.ConnectionString);
			
				ThisCategory.Description = this.txtCategoryName.Text;
				ThisCategory.IconUrl = this.txtIconUrl.Text;
				ThisCategory.Update(this.ConnectionString);
				lstCategories.SelectedItem.Text = txtCategoryName.Text;
			}

			pnlCategory.Visible = false;
		}

		protected void lnkAddCategoryCancel_Click(object sender, System.EventArgs e)
		{
			pnlCategory.Visible = false;
		}

		protected void imgAddCategoryCancel_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			pnlCategory.Visible = false;
		}

		protected void imgAddCategorySave_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkAddCategorySave_Click(this.lnkAddCategory, new EventArgs());
		}

		protected void imgAddStatusSave_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkAddStatusSave_Click(this.lnkAddStatus, new EventArgs());
		}

		protected void imgAddStatusCancel_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			pnlStatus.Visible = false;
		}

		protected void imgAddStatus_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkAddStatus_Click(lnkAddStatus, new EventArgs());
		}

		protected void imgEditStatus_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkEditStatus_Click(lnkEditStatus, new EventArgs());
		}

		protected void imgDeleteStatus_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkDeleteStatus_Click(lnkDeleteStatus, new EventArgs());
		}

		protected void imgAddCategory_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkAddCategory_Click(lnkAddCategory, new EventArgs());
		}

		protected void imgEditCategory_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkEditCategory_Click(lnkEditCategory, new EventArgs());
		}

		protected void imgDeleteCategory_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			lnkDeleteCategory_Click(lnkDeleteCategory, new EventArgs());
		}

		protected void txtStatusDescription_TextChanged(object sender, System.EventArgs e)
		{
		
		}

		protected void txtStatusFontFlags_TextChanged(object sender, System.EventArgs e)
		{
		
		}
	}
}

⌨️ 快捷键说明

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