2011-07-14 38 views
0

我有一个组合框的项目,所有绑定都正确。自安装SL5以来,我开始遇到各种绑定问题以及调试器被瘫痪。问题是,当您从SL4切换到SL5然后切换回SL4时,并非所有参考都会重置。长话短说,我不得不重新安装vs2010来解决这些问题。现在我正在测试开发环境,虽然我可以从虚拟机获取一个文本框进行绑定,但无法绑定组合框。MVVM组合框绑定问题

我想知道的是,组合框绑定的绝对最低要求是什么。我的ViewModel的属性SET正在获取其数据。我有组合框的ItemSource集和DisplayMemberPath集。我尝试过使用ItemTemplate语法,但没有任何工作。 RaisePropertyChanged正在被解雇。这可能是一个UI线程问题吗?这个组合框和其他组件之间的唯一区别是,有一个调用数据库的方法来收集第二次调用数据库时使用的值。那些结果然后传递给引发RaisePropertychanged事件的VM中的属性,但绑定不会呈现。我在类构造函数和绑定工程中嘲笑了一个实体,但是当我从数据库加载实体时它不起作用。

+0

你能否确认这个问题在sl4中不存在? – cordialgerm

回答

0

我发现了这个问题。这可能对其他人有帮助。我在该方法的Completed事件中实例化了一个ViewModels ObservableCollecion,然后从数据库中遍历该集合并将其添加到集合中。绑定没有发生。我将ObservableCollection的实例化改为ViewModels构造函数,Binding开始工作。仍然有点困惑,为什么新的ObservableCollection必须在ViewModels构造函数中,而不是在获取数据的方法的Completed事件中。

+0

当你“设置m_Observable = new ObservableCollection ();”您可能需要引发PropertyChanged事件。 –