在我的视图中使用ComboBox
实现我的viewModel以提供单个选择的代码非常简单:
public class TransportViewModel : ViewModel
{
private Transport _primaryModel;
private ObservableCollection<Remark> _cargoRemarks;
public ObservableCollection<Remark> CargoRemarks
{
get { return _cargoRemarks; }
set
{
if (_cargoRemarks != value)
{
_cargoRemarks = value;
RaisePropertyChanged("CargoRemarks");
}
}
}
public Remark SelectedCargoRemark
{
get { return _primaryModel.CargoRemark; }
set
{
if (_primaryModel.CargoRemark != value)
{
_primaryModel.CargoRemark = value;
RaisePropertyChanged("SelectedCargoRemark");
}
}
}
}
视图现在可以像这样使用它:
<ComboBox ... ItemsSource="{Binding CargoRemarks, UpdateSourceTrigger=PropertyChanged}" SelectedValue="{Binding SelectedCargoRemark, UpdateSourceTrigger=PropertyChanged}" />
但是我想知道我必须在视图和viewModel中更改以提供多项选择(不仅可以选择一条注释,而且可以选择1-n个注释)。
这已经讨论了几次,但这些讨论大多超过4年,看起来非常复杂,需要额外的框架或类。有没有“苗条”的解决方案?