WPF与MVVM的实现(五)注册路由事件

    接触WPF已经有两年,大大小小开发过几个项目,但从来没有系统的去学习过。几次开发项目时都觉得十分的恼火,太多的事件稍微考虑不到位就会带来麻烦,为此特地系统的看了一本《C#高级编程》第10版,了解到MVVM框架,看了之后十分欢喜,本篇记录研究MVVM过程。

0001 为什么要注册路由事件

当界面上有二十个按钮,分别带表不同的指令,你可以一个个绑定命令,这要绑定很多命令,当然也可以使用带参数的命令,这是一个好方法。那如果是20个Slider的值呢?所以采用路由事件再好不过。路有事件用来获取同一类事件,例如UI上面的所有按钮的点击,下面给出两个例子。

0010 按钮(Button)注册路由事件

public ViewModel()

{

EventManager.RegisterClassHandler(typeof(Button), Button.ClickEvent, new RoutedEventHandler(OnClick));

}

void OnClick(object sender, RoutedEventArgs e)

{

return;

}


0011 滑块(Slider)注册路由事件

EventManager.RegisterClassHandler(typeof(Slider), Slider.ValueChangedEvent,

new RoutedPropertyChangedEventHandler<double>(OnSliderValueChanged));


猜你喜欢

转载自blog.csdn.net/shaynerain/article/details/78881858
今日推荐