gpt4 book ai didi

wpf - 控件之间的 MVVM 命令路由

转载 作者:行者123 更新时间:2023-12-03 10:41:04 25 4
gpt4 key购买 nike

我目前有一个带有 Button 和 ContentPresenter 的主视图,它绑定(bind)到 ViewModel 的一个属性,该属性是另一个 View(和关联的 ViewModel)。有没有办法从 ContentPresenter 中加载的控件中声明的处理程序路由命令?我这样做的原因是主视图包含工具栏,而内容演示​​者具有内容。我正在使用 Microsoft MVVM 模板和生成的 DelegateCommand 类。

<Window ...>
<Button x:Name="btnAction" Command="{Binding ActionCommand}" />
<ContentPresenter Content="{Binding CurrentView}" />
</Window>

最佳答案

您应该创建一个命令对象,它是窗口和控件都可以看到的类上的静态对象。

  public static class MyCommands
{
public static RoutedUICommend CoolCommand .....;
}

然后可以将控件的Command属性绑定(bind)到命令对象上,例如:
<Button Command="cmd:MyCommands.CoolCommand" />

然后,您只需使用 CommandBinding XAML 元素在窗口级别处理命令绑定(bind)。
<CommandBinding Command="cmd:MyCommands.CoolCommand" Executed="My_Handler" />

关于wpf - 控件之间的 MVVM 命令路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1664030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com