gpt4 book ai didi

wpf - 执行 ApplicationCommands.Close 时实际发生的情况

转载 作者:行者123 更新时间:2023-12-02 02:39:34 25 4
gpt4 key购买 nike

我想标题中的问题已经很清楚了。当我打电话时会发生什么

ApplicationCommands.Close.Execute(null,null)

来 self 的 View 模型类。

我有一个显示用户控件的模型对话框。我有一个命令绑定(bind)到用户控件中的按钮,该按钮在 View 模型中执行。我想在执行命令后关闭对话框。可以使用上面的命令来完成到执行事件的结束。

但是我想知道这是否是正确的方法。这会导致任何不良影响吗?

最佳答案

不幸的是,这行不通。

ApplicationCommands.Close 是一个 RoutedUiEvent,需要 Commandtarget(任何 IInputelement)。它使用此命令目标来引发路由事件。

然后您可以通过使用命令绑定(bind)来处理此路由事件。

从 ViewModel 中,您可以将 ApplicationCommands.Close 绑定(bind)到“关闭按钮”,然后在窗口中处理路由的关闭事件。

但是,在执行另一个命令后,您无法在 ViewModel 中调用 ApplicationCommands.Close.Execute(null,null),因为您没有 CommandTarget(第二个 null)

还有其他类似的线程 How should the ViewModel close the form?其中详细介绍了实现此目的的各种方法。

http://adammills.wordpress.com/2011/02/16/mvvm-uses-for-applicationcommands-close/

关于wpf - 执行 ApplicationCommands.Close 时实际发生的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4582540/

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