【发布时间】:2014-03-31 11:28:14
【问题描述】:
当我从列表中删除一个项目时,MvxListView 不会刷新。
我的清单(没什么花哨的):
private List<Item> items = new List<Item>();
public List<Item> Items
{
get { return items; }
set { items = value; RaisePropertyChanged(() => Items); }
}
不起作用的代码:
Items.RemoveAll(x => x.Id == item.Id);
RaisePropertyChanged(() => Items);
有效的代码:
Items = Items.Where(x => x.Id != item.Id).ToList();
从视图模型中的独立函数调用RaisePropertyChanged() 函数时似乎没有预期的效果,但为什么呢?
【问题讨论】:
-
刚刚尝试过 RaisePropertyChanged() 工作正常,所以我认为如果 mvvmcross 对您不起作用,您会遇到一些问题。我正在使用 MvvmCross 3.0.14
-
切换到使用可观察集合而不是列表。或者,有关详细信息,请参阅stackoverflow.com/questions/22161149/…