我有一个保存按钮,我想使用MVVM设计模式,但是我需要在保存完成后关闭窗口,我在网上看了一下,看到这是很多工作,所以我决定在后面的代码上创建window.close(),并在视图模型上创建所有保存逻辑。
如何使用命令绑定和事件处理程序实现按钮?
答案 0 :(得分:0)
查看this answer对我来说效果很好。您可以将窗口本身作为命令参数传递,然后在viewmodel中使用它来关闭它。
该答案的相关XAML:
Command="{Binding CloseWindowCommand, Mode=OneWay}"
CommandParameter="{Binding ElementName=TestWindow}"
来自相同答案的相关ViewModel命令处理程序:
private void CloseWindow(Window window)
{
if (window != null)
{
window.Close();
}
}
您显然还需要公开要绑定的命令,在本例中称为CloseWindowCommand
。
答案 1 :(得分:0)
只需在按钮xaml中定义两个,如下所示:
<Button Command="{Binding SaveCommand}" Click="Button_click"/>