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));
相关推荐
Hare_bai14 小时前
WPF的MVVM模式核心架构与实现细节
ui·架构·c#·wpf·交互·xaml·mvvm
张人玉16 小时前
WPF 静态样式与动态样式的定义及使用详解
ui·c#·wpf
山间点烟雨18 小时前
2. WPF程序打包成一个单独的exe文件
c#·wpf·独立打包exe
A达峰绮21 小时前
Actor模型在Actix中的应用
wpf·actix·actor模型
清风徐来Groot1 天前
WPF之HandyControl库使用
wpf
Aevget2 天前
界面控件DevExpress WPF v25.2预览 - 模板工具包全新升级
c#·wpf·界面控件·devexpress·ui开发
Aevget2 天前
界面控件DevExpress WPF v25.1 - 官宣支持Avalonia XPF
wpf·界面控件·devexpress·ui开发·.net 10
没有梦想的咸鱼185-1037-16632 天前
SWAT模型应用
arcgis·数据分析·wpf
ifeng09182 天前
HarmonyOS实战项目:打造智能家居控制中心(设备发现与控制)
wpf·智能家居·harmonyos
ifeng09183 天前
HarmonyOS实战项目:开发一个分布式新闻阅读客户端
分布式·wpf·harmonyos