C# 删除项目GridView Windows 8 Metro
我试图从GridView控件中删除项。单击“删除”时,GridView无法更新 我已将GridView与可观察集合中的订单列表绑定。这是我的订单类:C# 删除项目GridView Windows 8 Metro,c#,xaml,microsoft-metro,C#,Xaml,Microsoft Metro,我试图从GridView控件中删除项。单击“删除”时,GridView无法更新 我已将GridView与可观察集合中的订单列表绑定。这是我的订单类: public class Order : INotifyPropertyChanged { public Order() { } private int _id; [PrimaryKey, AutoIncrement] public int Id { get { return _id; }
public class Order : INotifyPropertyChanged
{
public Order() { }
private int _id;
[PrimaryKey, AutoIncrement]
public int Id
{
get { return _id; }
set
{
this._id = value;
Notify("ID");
}
}
public int RestaurantID { get; set;}
public DateTime Date { get; set; }
public string Note { get; set; }
public decimal TotalPrice { get; set; }
[Ignore]
public List<OrderDetail> OrderDetails { get; set; }
#region INotifyPropertyChanged Members
[Ignore]
public event PropertyChangedEventHandler PropertyChanged;
[Ignore]
protected void Notify(string propName)
{
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propName));
}
}
#endregion
}
代码似乎只是从存储库中删除了该项。您还需要将其从
ObservableCollection
中删除。尝试在存储库下添加此项。删除订单(order.Id)
:
ObservableCollection<Order> orderCollection = new ObservableCollection<Order>();
foreach (Order ord in orders)
{
orderCollection.Add(ord);
}
this.DefaultViewModel["Items"] = orderCollection;
private void btnDelete_Click_1(object sender, RoutedEventArgs e)
{
Button btnDelete = (Button)sender;
Order order = btnDelete.DataContext as Order;
repository.DeleteOrder(order.Id);
}
orderCollection.Remove(order);