Нет реального механизма выбора, встроенного в ItemsControl
.Вероятно, это решило бы вашу проблему для замены ItemsControl
на ListBox
.
. Если вы сделаете это, вы можете привязать к SelectedItem
, а затем обработать любые изменения, сделанные в SelectedItem
, используя PropertyChanged
event.
Пример:
В конструкторе модели вашего представления:
PropertyChanged += NotificationViewModel_PropertyChanged;
Добавьте свойство в модель представления, чтобы разрешить привязку:
private string _selectedNotification;
public string SelectedNotification
{
get { return _selectedNotification; }
set
{
if (_selectedNotification != value)
{
_selectedNotification = value;
RaisePropertyChanged("SelectedNotification");
}
}
}
Наконец, добавьте обработчик событий в вашу модель представления:
NotificationViewModel_PropertyChanged(object sender, PropertyChangedEventArgs e))
{
if (e.PropertyName = "SelectedNotification") DoStuff();
}
Вы можете обнаружить, что вам даже не нужно подключаться к PropertyChanged
, если вы просто хотите обновить другой элемент управления в вашемпросматривать на основе выбранного элемента в списке.Вы можете просто привязать непосредственно к собственности в XAML.