Реализация моего ViewModel, чтобы предоставить код для одного выбора с помощью ComboBox
на мой взгляд, довольно легко:Multiselect с WPF и MVVM
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 лет, выглядят очень сложными, требуют дополнительных фреймворков или классов. Есть ли «тонкое» решение?
Это для внешней библиотеки/продукта. Так что не совсем то, что я ищу. – mosquito87