【问题标题】:Errors when binding selectedItem on a combobox在组合框上绑定 selectedItem 时出错
【发布时间】:2013-10-29 08:11:15
【问题描述】:

我想将组合框的选定项数据绑定到 c# 属性。当我执行以下操作时,该属性将获得值“Suite.Module.RateExperiment.ViewModels.ChamberViewModel”(这不是组合框中所选项目的值):

    <ComboBox DisplayMemberPath="ChamberName" Grid.Column="0" Grid.Row="1" Height="20" VerticalAlignment="Top" ItemsSource="{Binding ChamberCollection}" SelectedValue="{Binding SelectedChamber}">
    </ComboBox>

还有 c#:

public string SelectedChamber
    {
        get { return _selectedChamber; }
        set
        {
            _selectedChamber = value;
            UpdateChart();
        }
    }

因为这个属性获得了这个值,我是不是绑定错了?

【问题讨论】:

  • SelectedChamber 属性应为ChamberViewModel 类型,请尝试相应更改。
  • @sthotakura 所说的(SelectedChamber 是一个字符串,没有任何“ChamberName”属性),另外,不要忘记在 SelectedChamber 的 setter 中引发 propertychanged。
  • 是的,你是完全正确的,不能说为什么我错过了:) 很多谢谢。我是新人 - 我如何将您的答案标记为这个问题的答案,因为它只是一个评论?
  • 很高兴,它确实有帮助,我会添加它作为答案。

标签: c# wpf xaml data-binding


【解决方案1】:

SelectedChamber 属性应为ChamberViewModel 类型,尝试如下更改:

public ChamberViewModel SelectedChamber
    {
        get { return _selectedChamber; }
        set
        {
            _selectedChamber = value;
            UpdateChart();
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-22
    • 1970-01-01
    • 2012-04-18
    • 2011-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多