我有一个带有许多按钮的WPF窗口(btn_1,btn_2,btn_3 ... btn_81),而是为每个按钮创建一个click事件,如下所示:
private void btn_1_Click(object sender, RoutedEventArgs e)
{
if (backColor != null)
btn_1.Background = backColor;
}
private void btn_2_Click(object sender, RoutedEventArgs e)
{
if (backColor != null)
btn_2.Background = backColor;
}
Run Code Online (Sandbox Code Playgroud)
我的意思是只创建一个click事件,并以某种方式获取我单击以执行操作的按钮的名称.使用click-event执行的操作对于每个按钮都是相同的:它们必须更改其背景.
我希望我能解释一下我的问题.TIA!
在您的XAML中,您可以将按钮单击事件绑定到同一个处理程序:
<StackPanel>
<Button Content="btn1" x:Name="btn1" Click="btn_Click"></Button>
<Button Content="btn2" x:Name="btn2" Click="btn_Click"></Button>
<Button Content="btn3" x:Name="btn3" Click="btn_Click"></Button>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
而背后的代码:
Brush backColor = new SolidColorBrush(Colors.Red);
private void btn_Click(object sender, RoutedEventArgs e)
{
Button btn = sender as Button;
if (btn != null && backColor != null)
btn.Background = backColor;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
652 次 |
| 最近记录: |