我正在使用 MVVM Light 开发 Xamarin(Android、iOS、WP 8.1 RT)应用程序。我的 ViewModel 有 2 个 ObservableCollections
所以我对 WP 的看法也包含 2 ListViews
.
假设 OC1 绑定(bind)到 LV1,OC2 绑定(bind)到 LV2。
第一个 OC 永远不会为空。
第二个 OC 几乎总是空的。
我想做以下事情:
LV1 和显示 LV2
我尝试绑定(bind)
Visibility
两者的属性ListViews
使用返回 Visibility.Collapsed
的转换器到 OC2或 Visibility.Visible
取决于给定集合中的项目数量。这最初是可行的,但在 OC2 中添加或删除项目时,可见性不会更新。它仅在使用 OC2 的 setter 时才有效(仅在初始化时)。
此问题与 this one 不重复因为我宁愿只使用 XAML 绑定(bind)或对我的
ViewModel
进行小的修改尽可能少的代码隐藏。
最佳答案
谢谢@3615,解决了!
在 ViewModel
:OC2.CollectionChanged += (sender, args) => RaisePropertyChanged(() => OC2);
关于c# - 使用 ObservableCollection 更新 CollectionChanged 上的 XAML 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35548381/