-1

我有两个类,ShoppingBasket 和 OrderItem,然后是 Form1 类。我想在 ShoppingBasket 中使用 OrderItem 中的四个属性,我该怎么做?

我有用于 ProductName 的 textBox1、用于 Quantity 的 numericUpDown1 和用于 LatestPrice 的 textBox2。一旦按下添加按钮,我将把这些添加到 listBox1 中。为此,我需要以某种方式使用 OrderItem 类中的属性;ProductName、Quantity、LatestPrice 和 TotalOrder(即 Quantity x LatestPrice)。然后我需要在类 ShoppingBasket 中的方法 AddProduct 中使用这些属性。

任何帮助将不胜感激。

表格1:

public partial class Form1 : Form
{
public Form1()
{
    InitializeComponent();
}

private void addButton_Click(object sender, EventArgs e)
{            
    ShoppingBasket addButtonShoppingBasket = new ShoppingBasket();

    addButtonShoppingBasket.AddProduct(textBox1.Text, Convert.ToDecimal(textBox2.Text), Convert.ToInt32(numericUpDown1.Value));
}
}

购物篮:

public class ShoppingBasket
{
public ShoppingBasket()
{

}

public void AddProduct(string productName, decimal latestProductValue, int quantity)
{

}
}

订单项:

public class OrderItem
{

public OrderItem(string productName, decimal latestPrice, int quantity)
{
    ProductName = productName;
    LatestPrice = latestPrice;
    Quantity = quantity;
    TotalOrder = latestPrice * quantity;
}

public string ProductName { get; set; }

public decimal LatestPrice { get; set; }

public int Quantity { get; set; }

public decimal TotalOrder { get; set; }
}
4

1 回答 1

2

首先,您应该为您的OrderItemin添加容器ShoppingBasket。像Lis<OrderItem> products,然后

public void AddProduct(string productName, 
                       decimal latestProductValue, 
                       int quantity)
{   
    products.Add(new OrderItem(productName, latestProductValue, quantity));
}

访问OrderItem你刚刚写的属性OrderItem.Quantity = 3

并且更好的创建Add方法只会接受OrderItem

public void AddProduct(OrderItem sb)
{

}

关于你的OrderItem,TotalOrder属性的东西应该是只读的(只有get方法):

public decimal TotalOrder { get; }
于 2013-07-17T11:16:53.293 回答