[英]Is using command binding or event handler a better approach to implement Close, Minimize and Maximize Buttons in WPF?
[英]WPF using command and event handler
我有一个保存按钮,我想使用MVVM设计模式,但是保存完成后,我需要关闭窗口,我在网上浏览了一下,发现这是很多工作,因此我决定将window.close()放在后面的代码上,并将所有保存逻辑放在视图模型上。
如何实现带有命令绑定和事件处理程序的按钮?
看看这个答案 ,对我来说效果很好。 您可以将窗口本身作为命令参数传递,然后在视图模型中使用它来关闭它。
该答案中的相关XAML:
Command="{Binding CloseWindowCommand, Mode=OneWay}"
CommandParameter="{Binding ElementName=TestWindow}"
来自相同答案的相关ViewModel命令处理程序:
private void CloseWindow(Window window)
{
if (window != null)
{
window.Close();
}
}
显然,您还需要公开一个要绑定的命令,在本例中为CloseWindowCommand
。
只需在按钮xaml中定义两个,如下所示:
<Button Command="{Binding SaveCommand}" Click="Button_click"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.