如何防止DataBinding暂时发生?

时间:2012-06-19 08:43:34

标签: wpf data-binding

我有一个在WPF和MVVM下运行的程序。我有一些每日工作时间的信息,我可以在每日,每周或每月的视图中显示。

我使用三个数据网格并通过绑定它们的Visible属性仅显示一个用户想要的数据。问题是这三个网格绑定到一个可观察的集合,所以视图要求提供信息,尽管没有显示。是否可以通过任何属性停用某些元素的数据绑定功能?

1 个答案:

答案 0 :(得分:1)

您只需将未显示的数据网格的ItemsSource设置为null即可。

您还可以使用MultiBinding ItemsSource和自定义IMultiValueConverter自动执行此操作。转换器将绑定到两个值(源集合和网格的Visibility)并在网格可见时返回集合本身,如果不可见则返回null。绑定本身可以是单向的。