CheckBox,IsChecked == false不起作用

Joh*_*ith 2 c# wpf

private void checkBox1_Checked(object sender, RoutedEventArgs e)
{
    if (checkBox1.IsChecked == false)
    {
        grid1.Visibility = System.Windows.Visibility.Hidden;
    }

    if (checkBox1.IsChecked == true)
    {
        grid1.Visibility = Visibility;
    }

}
Run Code Online (Sandbox Code Playgroud)

为什么 grid1.Visibility = System.Windows.Visibility.Hidden;不工作,网格不隐藏

Hei*_*nzi 5

您正在处理Checked事件,该事件仅在选中CheckBox时发生,而不是在未选中时发生.要解决此问题,请同时处理Unchecked事件:

private void checkBox1_Checked(object sender, RoutedEventArgs e) 
{ 
    grid1.Visibility = System.Windows.Visibility.Visible; 
} 

private void checkBox1_Unchecked(object sender, RoutedEventArgs e) 
{ 
    grid1.Visibility = System.Windows.Visibility.Hidden; 
} 
Run Code Online (Sandbox Code Playgroud)