У меня есть выпадающий список в пользовательском элементе управления, который имеет свою собственную модель представления.Когда пользователь изменяет выбранный элемент, свойство модели представления изменяется, но я хочу вызвать событие из модели представления, чтобы сообщить контейнеру usercontrol, что пользователь что-то выбрал, и передать выбранную строку.
<UserControl x:Class= ....etc>
<UserControl.Resources>
<viewmodel:PortsViewModel x:Key="pvm"></viewmodel:PortsViewModel>
</UserControl.Resources>
<Menu DataContext="{Binding Source={StaticResource pvm}}">
<ComboBox Name="PortsCombo"
ItemsSource="{Binding Path=Ports}"
SelectedItem="{Binding Path=SPort}"
DisplayMemberPath="PortName">
</ComboBox>
</Menu>
</UserControl>`
и в окне (что добавить в xaml?:
<localviews:PortsView />
и мою модель представления:
public Port SPort
{
get { return _sport; }
set
{
var portName = value.PortName;
int portNo = value.PortNo;
_sport = value;
// What to add here to trigger the event?
}
}