有一个ComboBox,使用CheckBox和TextBlock装饰项目,如下所示:
<ComboBox ItemsSource="{Binding AllList}" >
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<CheckBox x:Name="chk" IsChecked="{Binding IsSelected}" Width="20" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Checked">
<i:InvokeCommandAction Command="{Binding IsCheckedCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</CheckBox>
<TextBlock Text="{Binding Number}" Width="100" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
在ViewModel中我们有:
RelayCommand<EventArgs> isCheckedCommand = new RelayCommand<EventArgs>(IsCheckedAction);
public RelayCommand<EventArgs> IsCheckedCommand
{
get { return isCheckedCommand; }
}
private void IsCheckedAction(EventArgs obj)
{
}
public static ObservableCollection<Groups> allList { get; set; }
public ObservableCollection<Groups> AllList
{
get { return allList ; }
set
{
allList = value;
OnPropertyChanged("AllList");
}
}
但事件未在ViewModel中触发并捕获。 任何人都可以指出是什么原因?