📄 manageapplication.aspx.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 + -