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));
相关推荐
YUNYINGXIA16 小时前
Redis集群
redis·wpf
大霸王龙2 天前
系统模块与功能设计框架
人工智能·wpf
明耀2 天前
WPF DataGrid 默认显示行号
wpf
lph19723 天前
wpf的converter
wpf
fyifei05583 天前
WPF学习PropertyChanged
wpf
爱炸薯条的小朋友3 天前
C#由于获取WPF窗口名称造成的异常报错问题
windows·c#·wpf
baivfhpwxf20233 天前
wpf ListBox 去除item 单击样式
wpf
诗仙&李白3 天前
lnnovationHubTool,用prism+WPF编写的MVVM模式的快速上位机软件开发框架平台
wpf·mvvm·prism·上位机软件开发框架平台
程序员小刘3 天前
【HarmonyOS 5】教育开发实践详解以及详细代码案例
华为·wpf·harmonyos
Java Fans3 天前
在WPF项目中集成Python:Python.NET深度实战指南
python·.net·wpf