(1)设计web窗体。Default.aspx用于选择宠物并放入到购物车中,ViewCart.aspx用于查看购物车中宠物信息、清空购物车和返回Default.aspx;
(2)设计窗体Default.aspx,添加一个CheckBoxList控件和两个Button控件;
(3)设置窗体Default.aspx中控件的属性;
(4)编写Default.aspx.cs中方法代码;
(5)设计窗体ViewCart.aspx,添加一个Label控件、一个CheckBoxList控件和两个Button控件;
(6)设置ViewCart.aspx中各控件的属性;
(7)编写ViewCart.aspx.cs中方法代码;
(8)从浏览Default.aspx开始对购物车网站进行测试。
(9)在ViewCart.aspx.cs文件中的“int iPosition=strPets.IndexOf(“,”)”语句出设置断点,通过断点逐条调试程序的执行,理解程序的执行过程
效果图:
**总结
:**
1. 需要两个web窗体,一个用于选择商品并放入购物车;一个用于查看购物车。
分别用web窗体(Default)和(ViewCart)
2. 在Default窗体终设置控件,需要一个CheckBoxList和两个Button,设置控件属性。编写Default.aspx.cs代码。
3. 设计ViewCart.aspx,在设计视图中添加lable控件和一个CheckBoxList和两个Button控件设计各控件的属性,并编写代码
4. 此用到Session记录放入购物车的商品
(1)default.aspx代码
<asp:CheckBoxList ID=“chklsPet” runat=“server” Height=“68px” Width=“198px”>
<asp:ListItem Value=“盲鱼”>盲鱼</asp:ListItem>
<asp:ListItem Value=“波斯猫”>波斯猫</asp:ListItem>
<asp:ListItem Value=“斑马”>斑马</asp:ListItem>
<asp:ListItem Value=“千里马”>千里马</asp:ListItem>
<asp:ListItem Value=“绵羊”>绵羊</asp:ListItem>
</asp:CheckBoxList>
<asp:Button ID=“btnBuy” runat=“server” Text=“放入购物车” OnClick=“btnBuy_Click” />
<asp:Button ID=“btnView” runat=“server” Text=“查看购物车” OnClick=“btnView_Click” />
(2)default.aspx.cs代码
protected void btnBuy_Click(object sender, EventArgs e)
{
for (int i = 0; i < chklsPet.Items.Count; i++)
{
if (chklsPet.Items[i].Selected) {
Session[“cart”] += chklsPet.Items[i].Text + “,”;
}
}
}
protected void btnView_Click(object sender, EventArgs e)
{
Response.Redirect("ViewCart.aspx");
}
(3)ViewCart.aspx代码
<asp:Label ID=“lblMsg” runat=“server”></asp:Label>
<asp:CheckBoxList ID=“chklsPet” runat=“server”>
</asp:CheckBoxList>
<asp:Button ID=“btnClear” runat=“server” OnClick=“btnClear_Click” Text=“清空购物车” />
<asp:Button ID=“btnContinue” runat=“server” OnClick=“btnContinue_Click” Text=“继续购物” />
(4)ViewCart.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session[“cart”] == null)
{
lblMsg.Text = “没有选购任何宠物!”;
btnClear.Enabled = false;
}
else
{
string strPets = Session["cart"].ToString();
System.Collections.ArrayList pets = new System.Collections.ArrayList();
int iPosition = strPets.IndexOf(",");
while (iPosition != -1) {
string strPet = strPets.Substring(0, iPosition);
if (strPet != "") {
pets.Add(strPet);
strPets = strPets.Substring(iPosition + 1);
iPosition = strPets.IndexOf(",");
}
}
lblMsg.Text = "购物车中现有宠物:";
chklsPet.DataSource = pets;
chklsPet.DataBind();
}
}
}
protected void btnClear_Click(object sender, EventArgs e)
{
Session.Remove("cart");
lblMsg.Text = "没有选购任何宠物!";
chklsPet.Visible = false;
btnClear.Enabled = false;
}
protected void btnContinue_Click(object sender, EventArgs e)
{
Response.Redirect("Default.aspx");
}