我想在单击时更改按钮的背景



我有两个按钮,按钮1和按钮2。按钮 1 的初始背景为白色,按钮 2 的背景为红色。

当我单击按钮 2 时,按钮2 的背景应该变成白色,按钮 1 应该变成红色。 如果我再次单击按钮 1,按钮 1 的背景应该变成白色,按钮 2 应该在 WPF 中变成红色。

为了保持简短,它应该像切换按钮一样工作。

一个代码示例会很好,但这里有一个如何完成的示例(不使用 mvvm(

这是我的 XAML:

<StackPanel Width="300">
<Button x:Name="button1" Background="White" Height="40" Click="button1_Click"/>
<Button x:Name="button2" Background="Red" Height="40" Click="button2_Click"/>
</StackPanel>

这是逻辑:

private void button1_Click(object sender, RoutedEventArgs e)
{
var temp = button1.Background;
button1.Background = button2.Background;
button2.Background = temp;
}
private void button2_Click(object sender, RoutedEventArgs e)
{
var temp = button2.Background;
button2.Background = button1.Background;
button1.Background = temp;
}
private void Button1_Click(object sender, RoutedEventArgs e)
{
changeBackground();
}
private void Button2_Click(object sender, RoutedEventArgs e)
{
changeBackground();
}
private void changeBackground()
{
Button2.Background = Button2.Background == Brushes.Yellow ? Brushes.Red : Brushes.Yellow;
Button1.Background = Button1.Background == Brushes.Yellow ? Brushes.Red : Brushes.Yellow;
}

相关内容

  • 没有找到相关文章

最新更新