我想将源数据中的属性绑定到int。举个例子:
<ComboBox Grid.Row="1" Grid.Column="2" VerticalAlignment="Center" ItemsSource="{Binding Makes}" SelectedItem="{Binding Path=Make_ID}" DisplayMemberPath="MakeDesc" />
从ViewModel:
public short Make_ID { get { return Vehicle.Make_ID; } set { Vehicle.Make_ID = value; OnPropertyChanged("Make_ID"); } }
Makes
是一个具有ID,MakeDesc等的类。我的视图模型对所选的make感兴趣,但只对它的ID感兴趣。我知道我可以用IValueConverters做到这一点,但我宁愿不必这样做 - 我认为有一种方法可以在绑定上做到这一点,我只是记不清楚。
答案 0 :(得分:1)
答案是使用SelectedValue和SelectedPath。
<ComboBox Grid.Row="1" Grid.Column="2" VerticalAlignment="Center" ItemsSource="{Binding Makes}" SelectedValue="{Binding Path=Make_ID}" SelectedValuePath="ID" DisplayMemberPath="MakeDesc" />