WPF —— MVVM command如何传递参数

点击按钮把窗体关闭 把页面的控件传递到自定义指令的函数中

FindAncestor 找到该组件的祖先元素

AncestorType={x:Type Window} 祖先元素类型为window
CommandParameter 自定义指令传递参数

自定义指令

cs 复制代码
public class MyCommand : ICommand
{
    public event EventHandler CanExecuteChanged;

    public bool CanExecute(object p)
    {
        return true;
    }

    public void Execute(object p)
    {
        var window = p as Window;
        if (window != null)
        {
            window.Close();
        }
    }
}

public MainWindow()

{

InitializeComponent();

M1 = new MyCommand();

this.DataContext = this;

//把指令封装公共类里面

//M1 = new CMD();

//this.DataContext = this;

}

public MyCommand M1 { get;set; }

//public CMD M1 { get; set; } 把指令封装公共类里面

相关推荐
玉面小君2 天前
从 WPF 到 Avalonia 的迁移系列实战篇6:ControlTheme 和 Style区别
c#·wpf·avalonia
c#上位机2 天前
wpf之Border
c#·wpf
SunflowerCoder2 天前
WPF迁移avalonia之图像处理(一)
图像处理·wpf·avalonia
周杰伦fans2 天前
WPF中的DataContext以及常见的绑定方式
wpf
没有bug.的程序员3 天前
Redis 数据结构全面解析:从底层编码到实战应用
java·数据结构·redis·wpf
somethingGoWay4 天前
wpf 自定义输入ip地址的文本框
wpf
秋月的私语4 天前
Wpf程序屏幕居中问题修复全记录
wpf
我要打打代码4 天前
WPF启动窗体的三种方式
wpf
R瑾安4 天前
mysql集群部署(Mysql Group Replication)
数据库·mysql·wpf
c#上位机4 天前
wpf中资源的使用
c#·wpf