遇到的问题:当Checkbox选中时触发Checked事件,使界面处于状态1,但是页面状态2时也希望checkBox处于选中状态,但是直接修改它的IsChecked属性势必会触发他的Checked事件,使界面回到状态1
目标:测试何时触发CheckBox的Checked事件,在事件内部改变他的选中状态
是否会引起循环调用
private void CheckBox_Checked(object sender, RoutedEventArgs e){MessageBox.Show("checkBox选中了");testCheckBox.IsChecked = false;testCheckBox.IsChecked = true;}private void Button_Click(object sender, RoutedEventArgs e){testCheckBox.IsChecked = true;}
结论:CheckBox的Checked事件在IsChecked属性由false变为
true的时候触发,无论是点击按钮,还是code中修改他的值,
符合此条件均会触发此事件