MVVM组合框绑定

MVVM组合框绑定,mvvm,combobox,Mvvm,Combobox,我有一个组合框,它的视图模型似乎没有更新 根据我的观点 <ComboBox Grid.Row="0" Grid.Column="1" ToolTip="Current rank of the officer" ItemsSource="{Binding Path=RanksAvailable}" DisplayMemberPath="Name" SelectedValuePa

我有一个组合框,它的视图模型似乎没有更新

根据我的观点

<ComboBox Grid.Row="0" 
           Grid.Column="1" 
           ToolTip="Current rank of the officer" 
           ItemsSource="{Binding Path=RanksAvailable}"
           DisplayMemberPath="Name"
           SelectedValuePath="Name"
           SelectedValue="{Binding Path=SelectedRank, Mode=TwoWay}"/>

在视图模型中,我有

    public List<Rank> RanksAvailable {get; set;}
    private Rank _selectedRank;

    public Rank SelectedRank 
    {
        get { return _selectedRank; }
        set
        {
            if (_selectedRank != value)
            {
                _selectedRank = value;
                this.isDirty = true;
                RaisePropertyChanged("SelectedRank");
            }
        }
    }
public List RanksAvailable{get;set;}
私人职级(u selectedRank);;
公共等级选定银行
{
获取{return\u selectedRank;}
设置
{
如果(_selectedRank!=值)
{
_selectedRank=值;
this.isDirty=true;
RaisePropertyChanged(“SelectedBank”);
}
}
}

组合框正在填充中,我似乎无法从中获取值

问题是您正在使用SelectedValuePath=“Name”只要删除它,它就会工作

您的组合框将成为-

<ComboBox Grid.Row="0" 
           Grid.Column="1" 
           ToolTip="Current rank of the officer" 
           ItemsSource="{Binding Path=RanksAvailable}"
           DisplayMemberPath="Name"
           SelectedValue="{Binding Path=SelectedRank, Mode=TwoWay}"/>