<StackPanel>
<CheckBox Name="CB1" Content="A" IsChecked="True"></CheckBox>
<CheckBox Name="CB2" Content="B"></CheckBox>
<CheckBox Name="CB3" Content="C" IsChecked="True"></CheckBox>
<Button Name="btnInvert" Content="Invert" Click="btnInvert_Click" ></Button>
</StackPanel>
Кодовая логика:
private void btnInvert_Click(object sender, RoutedEventArgs e)
{
if (CB1.IsChecked == true && CB3.IsChecked == true)
{
CB2.IsChecked = true;
CB1.IsChecked = false;
CB3.IsChecked = false;
}
else
{
CB2.IsChecked = false;
CB1.IsChecked = true;
CB3.IsChecked = true;
}
}
Или просто:
private void btnInvert_Click(object sender, RoutedEventArgs e)
{
if (CB1.IsChecked == true && CB3.IsChecked == true)
{
CB2.IsChecked = true;
CB1.IsChecked = false;
CB3.IsChecked = false;
}
}
По вашему требованию.
if (CB1.IsChecked == true && CB3.IsChecked == true&& CB2.IsChecked== false)
{
CB2.IsChecked = true;
CB1.IsChecked = false;
CB3.IsChecked = false;
}
else
{
CB2.IsChecked = false;
CB1.IsChecked = true;
CB3.IsChecked = true;
}