WPF(二)路由事件3.附加事件
2012-02-07 00:19
197 查看
假设在StackPanel面板中包含了一堆按钮,并且希望在一个事件处理程序中处理所有这些按钮的事件,一种办法是每个按钮的Click事件关联到同一个事件处理程序。还有一种更简单的办法,可以通过处理更高元素的Click事件来处理所有按钮的单击事件。
如果想判断是哪一个按钮被点击,可以根据按钮的Name属性进行判断
还有一种办法可以根据按钮的Tag属性进行判断,必须要设置tag的值
<StackPanel Button.Click="DoSomething" Margin="5"> <Button Name="cmd1">Button1</Button> <Button Name="cmd2">Button2</Button> <Button Name="cmd3">Button3</Button> <Button Name="cmd4">Button4</Button> </StackPanel>
如果想判断是哪一个按钮被点击,可以根据按钮的Name属性进行判断
private void DoSomething(object sender, RoutedEventArgs e) { if (sender == cmd1) { //code } else if (sender == cmd2) { //code } else if (sender == cmd3) { //code } else if (sender == cmd4) { //code } }
还有一种办法可以根据按钮的Tag属性进行判断,必须要设置tag的值
private void DoSomething(object sender, RoutedEventArgs e) { object tag = ((FrameworkElement)sender).Tag; }
相关文章推荐
- WPF 自定义路由事件 与 附加路由事件
- WPF--事件、路由事件、附加事件的区别
- WPF学习(2) – 逻辑树和可视树、依赖属性、附加属性、路由事件、命令
- WPF学习(6)路由事件
- WPF路由事件
- WPF 冒泡路由事件
- 路由事件和附加事件关系
- WPF:自定义路由事件的实现
- 第5章 路由事件(4)——附加路由事件
- 重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试
- WPF中的Visual Tree和Logical Tree与路由事件
- WPF原理剖析——路由事件
- WPF(二)路由事件5.鼠标拖放
- WPF中路由事件的应用
- WPF学习之路由事件
- wpf路由事件
- WPF事件(一)内置路由事件
- 了解 WPF 中的路由事件和命令
- wpf样式绑定 行为绑定 事件关联 路由事件实例
- [简译]WPF的新特性——路由事件(2)