2016-01-28 168 views
0

我有一个组合框绑定到ObservableCollection <>集合。该集合中有7个对象,它们是具有要显示的字符串和DateTime的类。集合中的第一个项目是空白的,当用户下拉列表时,他们会看到文本选择(今天,明天,今天@中午,今天@午夜...)。用户选择一个,然后将第一个项目的文本设置为计算值(28-Jan-2016 6:00 AM)。这一切都可以在ComboBox关闭事件中正常工作。更改WPF组合框显示文本

然而,我有另一个地方,用户可以调整小时或分钟的一部分。假设将小时数6更改为9.然后更新集合中第一个对象的文本。现在我想让封闭的ComboBox控件更新它当前显示的内容。

我看到的第一个问题是我正在改变的是“内部”集合,所以INotifyPropertyChanged不会帮助。然后我意识到我正在改变现有对象的内容,所以我没有看到ComboBox甚至不知道如何更新。

我现在的想法是,我完全走错了路,有更好的模式可以起诉。无论是或者有一些简单的“重置”我还没有找到的组合框机制。

回答

0

你的对象必须实现接口INotifyPropertyChanged的 请看看Here

为你的方法,我相信你的方式,当你在ComboBox中选择一个选项,在未来的人应该考虑安排你的组合框并且排除在

之前不符合所选选项的选项