mvvm框架下,wpf如何实现窗口的关闭

思路,将这个view当作参数传递给viewModel

步骤一:给xaml起名字:Name="window"

步骤二:在需要实现关闭的按钮中将window元素传出去

XML 复制代码
<Button Command="{Binding CloseWindowCommand}" CommandParameter="{Binding   ElementName=window}">立即注册</Button>

步骤三:viewModel中将传入的object类型转换一下然后就调用Close

方法:

cs 复制代码
private void CloseWindow(object parameter)
{
    MessageBox.Show("OK!");
    var window = parameter as Window;
    if (window != null)
    {
        window.Close();
    }
}

构造函数中绑定按钮的Command:

cs 复制代码
CloseWindowCommand = new RelayCommand<object>(t => CloseWindow(t));
相关推荐
CPU不够了10 小时前
window7 wpf程序打不开问题排查及处理
windows·.net·wpf
界面开发小八哥12 小时前
界面组件DevExpress WPF中文教程:Grid - 如何获取行句柄?
wpf·界面控件·devexpress·ui开发·用户界面
YUNYINGXIA2 天前
Redis集群
redis·wpf
大霸王龙3 天前
系统模块与功能设计框架
人工智能·wpf
明耀4 天前
WPF DataGrid 默认显示行号
wpf
lph19724 天前
wpf的converter
wpf
fyifei05584 天前
WPF学习PropertyChanged
wpf
爱炸薯条的小朋友4 天前
C#由于获取WPF窗口名称造成的异常报错问题
windows·c#·wpf
baivfhpwxf20234 天前
wpf ListBox 去除item 单击样式
wpf
诗仙&李白4 天前
lnnovationHubTool,用prism+WPF编写的MVVM模式的快速上位机软件开发框架平台
wpf·mvvm·prism·上位机软件开发框架平台