0

堆,

我正在 WPF 中对注册表单进行原型设计。用户指定他们的啤酒偏好。啤酒是一种enum

PersonModel已经ObservableCollection<Beer>打电话了BeerPreferences

中的复选框绑定的PersonViewModel重新项目。例如,它们是:、和。他们的实现会检查、添加、删除集合中的枚举。BeerPreferencesPersonViewIsLaggerPreferredIsPaleAlePreferredIsIPAPreferredBeerBeerPreferences

我想将属性添加到该属性bool,当设置为 时,将清除之前所做的任何选择。getter 调用 BeerPreferences.Clear() 。HasNoPreferencePersonViewModeltrueHasNoPreference

如何通知PersonView更新绑定到IsLaggerPreferredIsPaleAlePreferredIsIPAPreferred何时HasNoPreference选中的复选框?

从根本上说,HasNoPreference触发一个间接的瞬态动作。如何触发毫无戒心的 UI 元素进行刷新?

一种方法是从使用 Beer 枚举更改为实现 INPC 的类。我喜欢只使用 Beer 枚举的简单性。还有其他我忽略的方法吗?

4

1 回答 1

0

您应该从二传手调用PropertyChanged("IsLaggerPreferred"), PropertyChanged("IsPaleAlePreferred")。或者您可以更新绑定到视图模型的每个 UI 控件。PropertyChanged("IsIPAPreferred")HasNoPreferencePropertyChanged("")

于 2013-11-03T22:46:12.390 回答