C# 购物篮创建什么&x27;她失踪了?
嗨,我花了一段时间在C#中创建了一个购物篮应用程序,使用Win表单和well。。。我想我撞到墙了。我有5个按钮(添加到项目/删除/全部清除/保存/退出)以及4个列表框(项目名称/价格/项目总数/总值)和数量的数字上/下。它编译得很好,所以我想我有一个清单,我只是缺乏实施或修复的精神能力C# 购物篮创建什么&x27;她失踪了?,c#,C#,嗨,我花了一段时间在C#中创建了一个购物篮应用程序,使用Win表单和well。。。我想我撞到墙了。我有5个按钮(添加到项目/删除/全部清除/保存/退出)以及4个列表框(项目名称/价格/项目总数/总值)和数量的数字上/下。它编译得很好,所以我想我有一个清单,我只是缺乏实施或修复的精神能力 1.“我的添加到项目”按钮实际上并没有将项目添加到列表框中,似乎 2.不确定如何使我的“数量”框正确工作(例如项目:胡萝卜数量:2价格:0.30),因此列表框将显示“胡萝卜0.60”) 3.项目总数(由于磅的原因
1.“我的添加到项目”按钮实际上并没有将项目添加到列表框中,似乎
2.不确定如何使我的“数量”框正确工作(例如项目:胡萝卜数量:2价格:0.30),因此列表框将显示“胡萝卜0.60”) 3.项目总数(由于磅的原因,不确定这是否有效)(应该像胡萝卜、冰箱、牛肉一样工作=项目总数的3)
4.总价值(不确定是否因其他原因而起作用,但应计算篮子中的项目并收回金额)
我认为除了这些以外,其他一切都是有效的。。。我将在pastebin链接中以及此处提供我的代码,以便于访问 用户界面 OrderItems类
btnAdd\u单击
-您实际上没有添加任何内容…好的。。我认为“stringitemname=txtItemName.Text;”将添加在该框中键入的任何内容
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ShoppingBasket
{
public class OrderItems
{
// my get setters ctors
public string ItemName { get; private set; }
public int NumberOfStock { get; private set; }
public decimal ReplacementValue { get; private set; }
public OrderItems(string groceryName, int replacementValue)
{
this.ItemName = groceryName;
this.NumberOfStock = replacementValue;
}
public OrderItems()
{
}
public decimal TotalValueReplacer
{
get
{
return this.NumberOfStock * this.ReplacementValue;
}
}
public int AddStock()
{
this.NumberOfStock++;
return this.NumberOfStock;
}
//this adds stock
public int AddStock(decimal ReplacementValue)
{
this.NumberOfStock++;
this.ReplacementValue = ReplacementValue;
return this.NumberOfStock;
}
//this an individual removal
public int RemoveStock()
{
this.NumberOfStock--;
//this stops stock going below
if (this.NumberOfStock < 0)
{
this.NumberOfStock = 0;
}
return this.NumberOfStock;
}
//this removes everything
public void RemoveAllStock()
{
this.NumberOfStock = 0;
}
public void Save(string items)
{
try
{
var filename = @"C:\\Users\\Barry\\Desktop\\receipt.txt";
System.IO.StreamWriter objWriter;
using (objWriter = new System.IO.StreamWriter(filename))
{
objWriter.Write(items);
objWriter.Close();
}
}
catch (Exception ex)
{
var message = ex.Message;
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ShoppingBasket
{
public class QA
{
public List<OrderItems> Oitems { get; set; }
public int StockTotal
{
get
{
int stock = 0;
foreach (OrderItems oi in Oitems)
{
stock += oi.NumberOfStock;
}
return stock;
}
}
public decimal FinalReplacementValue
{
get
{
decimal GroceryReplaceValue = 0.0m;
foreach (OrderItems o in Oitems)
{
GroceryReplaceValue += o.TotalValueReplacer;
}
return GroceryReplaceValue;
}
}
public void AddItem(string groceryName, int ReplacementValue)
{
for (int i = 0; i < Oitems.Count; i++)
{
//is item already added
if (Oitems[i].ItemName == groceryName)
{
Oitems[i].AddStock(ReplacementValue);
return;
}
}
//adds if already an item
OrderItems oi = new OrderItems(groceryName, ReplacementValue);
Oitems.Add(oi);
}
public void DropItem(string groceryName)
{
for (int i = 0; i < Oitems.Count; i++)
{
//is item already addded
if (Oitems[i].ItemName == groceryName)
{
Oitems[i].RemoveStock();
return;
}
}
throw new InvalidOperationException(string.Format("item {0} is invalid", groceryName));
}
public void RemoveItem(string groceryName)
{
for (int i = 0; i < Oitems.Count; i++)
{
if (Oitems[i].ItemName == groceryName)
{
Oitems.RemoveAt(i);
return;
}
}
}
public void RemoveAllItem()
{
Oitems.Clear();
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ShoppingBasket
{
public partial class ShoppingWindow : Form
{
private QA basket = new QA();
public ShoppingWindow()
{
InitializeComponent();
}
private void txtItemName_TextChanged(object sender, EventArgs e)
{
}
private void btnAdd_Click(object sender, EventArgs e)
{
string itemName = txtItemName.Text;
}
private void btnSave_Click(object sender, EventArgs e)
{
var items = "";
foreach (var item in lbItems.SelectedItems)
{
items += item.ToString();
items += "\n";
}
var order = new OrderItems();
order.Save(items);
MessageBox.Show("Receipt saved.");
}
private void btnRemove_Click(object sender, EventArgs e)
{
if (lbItems.SelectedIndex >= 0)
{
//item selected
OrderItems oi = basket.Oitems[lbItems.SelectedIndex];
basket.RemoveItem(oi.ItemName);
}
}
private void btnClear_Click(object sender, EventArgs e)
{
basket.RemoveAllItem();
MessageBox.Show("All Items removed.");
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}