2010-08-19 134 views
0

我有一个配置对象,其中包含要填充到UI的值。该对象可序列化为XML文件,因此用户可以即时保存并加载GUI的当前状态。该对象本身是我添加到我的代码后面的XAML窗口的属性。更新WPF UI绑定的数据源

如果此窗口中的每个UI控件都绑定到配置对象中的某个属性,我可以在运行时将该对象替换为配置XML文件的反序列​​化副本,并期望UI控件自动附加到新对象?

或者,我可以在窗口上通过所有子控件来更新它们在XAML中指定的绑定?

还是我必须单独去每个项目并每次都重置源项目?

回答

1

这取决于UI元素如何绑定到配置对象。如果他们正在通过包含该对象的单独属性(例如绑定到Configuration.ConfigParam,其中Configuration是DataContext对象的属性),则只要配置为DependencyProperty或包含该类的类Configuration属性为Configuration属性实现INotifyPropertyChanged。