以下を使用して、WPF ListView にバインドしItemsSource="{Binding Path=ProductList}"
ます。
private ObservableCollection<SalesItem> _ProductList = new ObservableCollection<SalesItem>();
public ObservableCollection<SalesItem> ProductList { get { return _ProductList; } set { _ProductList = value; } }
ListView に新しい行を挿入します。
SalesItem item = new SalesItem { Picture = product.Picture, ProductName = product.Name, Quantity = 1, TotalPrice = product.Price };
ProductList.Add(item);
今私はしたいupdate the quantity, and price, if the quantity is zero, remove from list
:
List<SalesItem> salesItems = (from SalesItem items in this.dgProductList.ItemsSource
select items).ToList<SalesItem>();
foreach (SalesItem salesItem in salesItems)
{
if (salesItem.ProductName == cbMultiProductList.Text.Trim())
{
// Increase item quantity
salesItem.Quantity = salesItem.Quantity + 1;
}
}
ありがとうございました。
編集:
SalesItem
EFコードファーストモデルです。
これを試してみましたが、問題は新しい行が最後の行に追加されることです:
ProductList.Remove(salesItem);
ProductList.Add(salesItem);