现在已经花了几个小时查看Google搜索结果,我发现的所有内容都是如何使用RoutedCommand捕捉MouseClicks和键盘快捷键来执行相同操作的示例。
我已经阅读了一些关于RoutedCommand的信息来源,例如MSDN和https://joshsmithonwpf.wordpress.com/2008/03/18/understanding-routed-commands/,如果我仍然理解它,它也应该能够做我需要的事情:
用例将是一个设置窗口,其中包含语言设置,在设置中单击确定后,所有活动窗口都应更改其语言字符串。我已经建立了一个方法,用语言标识符重新加载字符串。
所以一般来说我希望Window2中的ButtonClick将Command调用方法“ChangeLanguage(lng)”调用到所有活动的Windows,无论是父MainWindow还是其他与Settings完全无关的ChildWindow。 Window类有自己的ChangeLanguage()函数来改变它们自己的字符串。
我想知道在这种情况下使用自定义EventHandler是否会更好并且以某种方式使其全局化,因此每个活动Window将侦听在设置窗口中更改语言时触发的事件。我在另一个问题here找到了一个全局CommandHandler的例子,但是我认为这不适用于一个事件。
答案 0 :(得分:0)