XAML如下:
<RadioButton Checked="RadioButton_Checked" Unchecked="RadioButton_Unchecked">
<CheckBox Content="内选项" Click="CheckBox_Click" Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
</RadioButton>
C#
private void RadioButton_Checked(object sender, RoutedEventArgs e)
{
Console.WriteLine("RadioButton_Checked被激发");
}
private void RadioButton_Unchecked(object sender, RoutedEventArgs e)
{
Console.WriteLine("RadioButton_Unchecked被激发");
}
private void CheckBox_Click(object sender, RoutedEventArgs e)
{
e.Handled = true;
}
private void CheckBox_Checked(object sender, RoutedEventArgs e)
{
e.Handled = true;
}
private void CheckBox_Unchecked(object sender, RoutedEventArgs e)
{
e.Handled = true;
}
如果不给CheckBox设置相同事件,并设置e.Handled = true;就会激发 RadioButton_Checked事件,而这个事件不是监测IsChecked属性的么?为什么它也会被执行?除了以上方法,有没有其他方法可以阻止RadioButton_Checked和RadioButton_UnChecked事件的执行?