CheckBox状态多选
前:
1 <StackPanel Margin="10"> 2 <Label FontWeight="Bold">Application Options</Label> 3 <StackPanel Margin="10,5"> 4 <CheckBox IsThreeState="True" Name="cbAllFeatures" Checked="cbAllFeatures_CheckedChanged" Unchecked="cbAllFeatures_CheckedChanged">Enable all</CheckBox> 5 <StackPanel Margin="20,5"> 6 <CheckBox Name="cbFeatureAbc" Checked="cbFeature_CheckedChanged" Unchecked="cbFeature_CheckedChanged">Enable feature ABC</CheckBox> 7 <CheckBox Name="cbFeatureXyz" IsChecked="True" Checked="cbFeature_CheckedChanged" Unchecked="cbFeature_CheckedChanged">Enable feature XYZ</CheckBox> 8 <CheckBox Name="cbFeatureWww" Checked="cbFeature_CheckedChanged" Unchecked="cbFeature_CheckedChanged">Enable feature WWW</CheckBox> 9 </StackPanel> 10 </StackPanel> 11 </StackPanel>
1 private void cbAllFeatures_CheckedChanged(object sender, RoutedEventArgs e) 2 { 3 bool newVal = (cbAllFeatures.IsChecked == true); 4 cbFeatureAbc.IsChecked = newVal; 5 cbFeatureXyz.IsChecked = newVal; 6 cbFeatureWww.IsChecked = newVal; 7 } 8 9 private void cbFeature_CheckedChanged(object sender, RoutedEventArgs e) 10 { 11 cbAllFeatures.IsChecked = null; 12 if ((cbFeatureAbc.IsChecked == true) && (cbFeatureXyz.IsChecked == true) && (cbFeatureWww.IsChecked == true)) 13 cbAllFeatures.IsChecked = true; 14 if ((cbFeatureAbc.IsChecked == false) && (cbFeatureXyz.IsChecked == false) && (cbFeatureWww.IsChecked == false)) 15 cbAllFeatures.IsChecked = false; 16 }
作者:Ants_double
出处:https://www.cnblogs.com/ants_double/
本文版权归作者和博客园所有,欢迎转载。转载请在留言板处留言给我,且在文章标明原文链接,谢谢!
如果您觉得本篇博文对您有所收获,觉得我还算用心,请点击右下角的 [大拇指],谢谢!