如何拦截视图中的RoutedCommand的执行? (WPF / MVVM)
在WPF / MVVM应用程序中,我试图找到一种代码高效的方式将主视图光标设置为Cursors.Wait
然后再进行任何冗长的操作,并在完成后将其恢复为默认光标。
由于所有的操作都是使用路由命令调用的,所以我想找到一种拦截命令执行的方式,理想情况是创建一个通用命令类来封装内置路由命令的实例,但我无法想象如何执行这个。
具体来说, RoutedCommand.Execute
方法不是虚拟的,所以我需要另一种机制来拦截它的调用。 另外,我不确定通用命令类的实例如何引用必须为其设置游标的视图。
有什么建议吗?
谢谢,
蒂姆
您可以静态设置光标。 其效果是当应用程序具有焦点时,而不是当它超过某个控件时,光标将是“等待”。
该代码将在冗长的操作开始时成为ViewModel的一部分:
Mouse.OverrideCursor = Cursors.Wait;
操作完成后,您必须像这样清除覆盖:
Move.OverrideCursor = null;
链接地址: http://www.djcxy.com/p/1643.html
上一篇: How to intercept execution of a RoutedCommand within the view? (WPF / MVVM)
下一篇: Collecting information about thread scheduling on Linux