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

📄 shoppingcart.aspx.vb

📁 Visual Basic.NET控件时尚编程百例
💻 VB
字号:
Public Class ShoppingCart
    Inherits System.Web.UI.Page
    Protected WithEvents lblStatus As System.Web.UI.WebControls.Label
    Protected WithEvents drpBasket As System.Web.UI.WebControls.Repeater
    Protected WithEvents lblSubTotal As System.Web.UI.WebControls.Label
    Protected WithEvents btnRecalculate As System.Web.UI.WebControls.Button
    Protected WithEvents btnCheckout As System.Web.UI.WebControls.Button
    Protected WithEvents pnlBasketSection As System.Web.UI.WebControls.Panel
    Protected Header1 As Store.header

#Region " Web 窗体设计器生成的代码 "

    '该调用是 Web 窗体设计器所必需的。
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

    End Sub

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
        '不要使用代码编辑器修改它。
        InitializeComponent()
    End Sub

#End Region

    Private myCart As New StoreCommon.Services.ShoppingCart()

    Private Sub Page_Load(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load
        '在此处放置初始化页的用户代码
        If Not IsPostBack Then
            '更新购物车
            PopulateShoppingCart()
        End If

    End Sub

    Private Sub btnRecalculate_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles btnRecalculate.Click
        '更新购物车
        UpdateShoppingCart()
        '重新设置购物车
        PopulateShoppingCart()
    End Sub

    Private Sub btnCheckout_Click(ByVal sender As Object, _
    ByVal e As EventArgs) Handles btnCheckout.Click
        '更新购物车
        UpdateShoppingCart()
        '获取购物车的当前用户
        Dim strCartID As String = myCart.GetCartID
        '查询该客户的消费总金额
        myCart.SubTotal(strCartID)
        '导航到订单确认页面
        Response.Redirect("CheckOut.aspx")
    End Sub

    Public Sub PopulateShoppingCart()
        '获取购物车的当前用户
        Dim myCartID As String = myCart.GetCartID
        If myCart.ItemsCount(myCartID) > 0 Then
            '获取商品详细信息,并绑定到Repeater控件中
            drpBasket.DataSource = myCart.GetItemsList(myCartID)
            drpBasket.DataBind()
            '显示消费总金额
            lblSubTotal.Text = myCart.SubTotal(myCartID).ToString
        End If
    End Sub

    Public Sub UpdateShoppingCart()
        Dim intListItemsCounter As Integer
        Dim objRepeaterItem As RepeaterItem
        '获取购物车的当前用户
        Dim strCartID As String = myCart.GetCartID
        For Each objRepeaterItem In drpBasket.Items
            '定义并获取数量的文本框控件和是否移除的CheckBox控件以及被掩藏的商品ID号
            Dim txtQuantity As System.Web.UI.WebControls.TextBox = _
            CType(objRepeaterItem.FindControl("txtQuantity"), TextBox)
            Dim chkRemove As System.Web.UI.WebControls.CheckBox = _
            CType(objRepeaterItem.FindControl("chkRemove"), CheckBox)
            Dim hdnItemID As System.Web.UI.HtmlControls.HtmlInputHidden = _
            CType(objRepeaterItem.FindControl("hdnItemID"), HtmlInputHidden)
            If (txtQuantity Is Nothing = False) And (chkRemove Is Nothing = False) _
                    And (hdnItemID Is Nothing = False) Then
                '将文本转换成整数
                Dim intQuantity As Integer = Int32.Parse(txtQuantity.Text)
                If (chkRemove.Checked = True Or intQuantity = 0) Then
                    '确定移除数量已经被设置为0的商品
                    myCart.RemoveItem(strCartID, hdnItemID.Value)
                Else
                    myCart.UpdateItem(strCartID, hdnItemID.Value, intQuantity)
                End If
            End If
        Next
        '显示已经选择的商品数量
        lblStatus.Text = "您已经选择了如下: " & myCart.ItemsCount(strCartID) & " 商品了:"
        '显示消费总金额
        lblSubTotal.Text = myCart.SubTotal(strCartID).ToString
    End Sub
End Class

⌨️ 快捷键说明

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