📄 manageorder.aspx.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;
namespace WebShop
{
/// <summary>
/// ManageOrder
/// </summary>
public class ManageOrder : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label lblNo;
protected System.Web.UI.WebControls.DataGrid Dglist;
protected System.Web.UI.WebControls.Label lblInfo;
protected System.Web.UI.WebControls.DataGrid dg_OrderList;
protected System.Web.UI.WebControls.ImageButton PrintButton;
protected System.Web.UI.HtmlControls.HtmlForm Form1;
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
try
{
if(Object.Equals(Session["UserName"],null) && DataAccessLayer.User.IsSupervisor(Session["UserName"].ToString()))
{
Response.Redirect("Error.aspx");
}
else
{
ViewState["Sort"] = "";
}
try
{
Bind();
}
catch(Exception ex)
{
ShowMsg(ex.Message,1);
}
}
catch
{
Response.Redirect("Error.aspx");
}
}
}
#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.dg_OrderList.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.dg_OrderList_PageIndexChanged);
this.dg_OrderList.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dg_OrderList_EditCommand);
this.PrintButton.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
/*
nametxt.Text=ds.Tables[0].Rows[0]["name"].ToString();
emailtxt.Text=ds.Tables[0].Rows[0]["mail"].ToString();
datetxt.Text=ds.Tables[0].Rows[0]["orderdate"].ToString();
phonetxt.Text=ds.Tables[0].Rows[0]["phone"].ToString();
addresstxt.Text=ds.Tables[0].Rows[0]["address"].ToString();
* */
private void Bind()
{
try
{
DataSet ds = DataAccessLayer.Order.GetOrders();
//ds.Tables[0].DefaultView.Sort = ViewState["Sort"].ToString();
this.dg_OrderList.DataSource = ds.Tables[0].DefaultView;
this.dg_OrderList.DataBind();
this.lblNo.Text = "You have " + ds.Tables[0].Rows.Count.ToString() + " order(s) to deal with.";
}
catch(Exception ex)
{
ShowMsg(ex.Message,1);
}
}
private void ShowMsg(string Message,int MessageType)
{
this.lblInfo.Visible = true;
if(MessageType==0)//Mission accomplished
{
this.lblInfo.Text = Message;
this.lblInfo.ForeColor = Color.Blue;
}
else
{
this.lblInfo.Text = Message;
this.lblInfo.ForeColor = Color.Red;
}
}
private void dg_OrderList_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
try
{
int oid = int.Parse(this.dg_OrderList.DataKeys[e.Item.ItemIndex].ToString());
DataAccessLayer.Order.Deal(oid);
ShowMsg("处理完成!",0);
Bind();
}
catch(Exception ex)
{
ShowMsg(ex.Message,1);
}
}
private void dg_OrderList_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
if(ViewState["Sort"].ToString() == e.SortExpression)
{
ViewState["Sort"] += " desc";
}
else
{
ViewState["Sort"] = e.SortExpression;
}
Bind();
}
private void ToExcel(System.Web.UI.Control ctl)
{
Response.Charset = "GB2312";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.DateTime.Now.ToString("yyyyMMddhhmmss") + "_" + HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes("表格")) + ".xls");
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.ContentType = "application/ms-execl";
ctl.Page.EnableViewState = false;
System.IO.StringWriter tw= new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new HtmlTextWriter(tw);
ctl.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
}
private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
ToExcel(dg_OrderList.Parent);
}
private void dg_OrderList_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataSet ds = DataAccessLayer.Order.GetOrders();
//ds.Tables[0].DefaultView.Sort = ViewState["Sort"].ToString();
this.dg_OrderList.DataSource = ds.Tables[0].DefaultView;
this.dg_OrderList.CurrentPageIndex=e.NewPageIndex;
this.dg_OrderList.DataBind();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -