In WPF, Button.Click
is a routed event, which means that the event is routed up the visual tree until it's handled. That means you can add an event handler in your XAML, like this:
<StackPanel Button.Click="button_Click">
<Button>Button 1</Button>
<Button>Button 2</Button>
<Button>Button 3</Button>
<Button>Button 4</Button>
</StackPanel>
Now all the buttons will share a single handler (button_Click) for their Click event.
That's an easy way to handle the same event across a group of controls that live in the same parent container. If you want to do the same thing from code, you can use the AddHandler method, like this:
AddHandler(Button.ClickEvent, new RoutedEventHandler( button_Click));
That'll add a handler for every button click in the window. You might want to give your StackPanel a name (like, "stackPanel1") and do it just for that container:
stackPanel1.AddHandler(Button.ClickEvent, new RoutedEventHandler( button_Click));
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…