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

📄 shoppingcart.aspx.cs

📁 电子商城源代码,包含项目工程文件! 数据库建表语句 具体功能包括电子购物车,在线购物!
💻 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 EMall
{
	/// <summary>
	/// Summary description for ShoppingCart.
	/// </summary>
	public class ShoppingCart : System.Web.UI.Page
	{
		protected Pub pub = new Pub();
		protected System.Web.UI.WebControls.DataGrid DataGrid1;
		protected System.Web.UI.WebControls.Button Button1;
		protected System.Web.UI.WebControls.Button Button2;
		protected System.Web.UI.WebControls.Label lbTotal;
		protected System.Web.UI.WebControls.ImageButton ImageButton1;
		protected System.Web.UI.WebControls.Label lbMsg;
		protected System.Web.UI.WebControls.Panel Panel1;
		protected System.Web.UI.WebControls.ImageButton ImageButton2;
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			// Put user code to initialize the page here
			if (Page.IsPostBack == false) 
			{
				BindData();
			}
		}

		void BindData() 
		{
			String CartID = pub.GetShoppingCartID();
			DataGrid1.DataSource = pub.spShoppingCartList(CartID);
			DataGrid1.DataBind();
			DispInfo();
		}

		void DispInfo()
		{
			String CartID = pub.GetShoppingCartID();
			if (DataGrid1.Items.Count == 0) 
			{
				lbMsg.Text = pub.SiteName + " -- 购物清单 -- 暂时为空 -- 请继续购物 ";
				Panel1.Visible = false;
			}
			else 
			{
				lbMsg.Text = pub.SiteName + " -- 购物清单 -- 共有 " + DataGrid1.Items.Count.ToString() + " 个记录 -- 请继续购物 ";
				Panel1.Visible = true;
				lbTotal.Text = String.Format( "{0:c}", pub.spShoppingCartTotal(CartID));
			}
		}

		void ShoppingCartUpdate()
		{
			String CartID = pub.GetShoppingCartID();
			// 遍历 DataGird1 里的 txtQuantity 与 cbRemove 值
			for (int i=0; i<DataGrid1.Items.Count; i++) 
			{
				// 获取相关值
				TextBox TxtQuantity = (TextBox) DataGrid1.Items[i].FindControl("txtQuantity");
				CheckBox cbRemove = (CheckBox) DataGrid1.Items[i].FindControl("cbRemove");
				int iQty;
				// 保护异常
				try 
				{
					iQty = Int32.Parse(TxtQuantity.Text);
					// 如果数量改变或者选中
					if (iQty != (int)DataGrid1.DataKeys[i] || cbRemove.Checked == true) 
					{
						Label lbProductID = (Label) DataGrid1.Items[i].FindControl("lbProductID");
						if (iQty == 0 || cbRemove.Checked == true) 
						{
							pub.spShoppingCartRemoveItem(CartID, Int32.Parse(lbProductID.Text));
						}
						else 
						{
							pub.spShoppingCartUpdateQty(CartID, Int32.Parse(lbProductID.Text), iQty);
						}
					}
				}
				catch 
				{
					lbMsg.Text = "系统提示: 您刚才至少有一处有输入错误.";
				}
			}
		}


		#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()
		{    
			this.Button1.Click += new System.EventHandler(this.Button1_Click);
			this.Button2.Click += new System.EventHandler(this.Button2_Click);
			this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);
			this.ImageButton2.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton2_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			ShoppingCartUpdate();
			BindData();
		}

		private void ImageButton2_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			ShoppingCartUpdate();
			if (DataGrid1.Items.Count > 0)
				// 付款结帐前, 再次检查是否非空购物车, 然后并没作过多的处理, 而是直接转向订单确认页面
				Response.Redirect("Checkout.aspx");
			else
				lbMsg.Text = "系统提示: 您当前的购物清单是空的, 所以, 您还无需进行结帐付款.";
		}

		private void Button1_Click(object sender, System.EventArgs e)
		{
			for(int i=0; i<DataGrid1.Items.Count; i++)
			{
				((CheckBox)DataGrid1.Items[i].Cells[0].FindControl("cbRemove")).Checked = true;
			}
			DispInfo();
		}

		private void Button2_Click(object sender, System.EventArgs e)
		{
			for(int i=0; i<DataGrid1.Items.Count; i++)
			{
				((CheckBox)DataGrid1.Items[i].Cells[0].FindControl("cbRemove")).Checked = false;
			}
			DispInfo();
		}
	}
}

⌨️ 快捷键说明

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