MVVM Combobox绑定
问题描述:
我有一个combobox,似乎没有更新它的视图模型。MVVM Combobox绑定
在视图我有
<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");
}
}
}
组合框被填充好了,我似乎无法得到一个值出来。
答
问题是你正在使用SelectedValuePath =“名称”只是删除它,它会工作。
你的ComboBox就become-
<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}"/>