【问题标题】:WPF ComboBox to ObservableCollection bindingWPF ComboBox 到 ObservableCollection 的绑定
【发布时间】:2014-05-25 21:37:01
【问题描述】:

我知道有一些关于这个问题的主题,但我没有找到任何解决这个问题的方法..

我有一个带有可观察集合的 ViewModel,我想将此集合绑定到一个组合框。但是,没有选定的项目,没有索引,只有集合本身。

在我的 XAML 中

ComboBox ItemsSource="{Binding OSCollection}" DisplayMemberPath="OSCollection.Name"

我相信问题出在上面的粗体上,我想从名为 name 的集合中获取一个属性,但就像我说的 - 在绑定之前不会选择任何项目。

我可以使用 foreach 或其他东西从集合中提取属性,但我认为这不是 MVVM 和 WPF 方式。

任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: c# wpf xaml mvvm observablecollection


    【解决方案1】:

    DisplayMemberPath 指定显示属性的路径。所以它应该是 Name 而不是 OSCollection.Name

      ComboBox ItemsSource="{Binding OSCollection}" DisplayMemberPath="Name"
    

    【讨论】:

    • 谢谢,简单到最后!
    【解决方案2】:

    除了 Sajeetharans 的评论: 当绑定到 T 类型的列表时,DisplayMemberPath 将始终引用 Property 的名称 T。在您的情况下,它只是“名称”

    【讨论】:

      猜你喜欢
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      • 2012-07-18
      • 2021-01-24
      • 1970-01-01
      • 1970-01-01
      • 2013-10-14
      • 2019-02-12
      相关资源
      最近更新 更多