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; } 把指令封装公共类里面

相关推荐
Aevget4 小时前
DevExpress WPF中文教程:Data Grid - 如何绑定到有限制的自定义服务(四)?
wpf·界面控件·devexpress·ui开发·.net 10
棉晗榜9 小时前
wpf DataGrid控制列是否显示,DataGrid列不会触发Visibility的转换器
wpf
超级种码9 小时前
Redis:Redis高可用——副本、哨兵和集群
数据库·redis·wpf
棉晗榜9 小时前
wpf给Border添加闪烁边框
wpf
Derrick_itRose9 小时前
DevExpress笔记WPF(2)Data Editors and Controls(基础编辑器)
笔记·编辑器·wpf
He BianGu10 小时前
【笔记】WPF的Binding中AsyncState的使用方式
笔记·wpf
曹天骄1 天前
Cloudflare KV 使用教程(基于 Wrangler 项目)
wpf
摘星编程1 天前
Flutter for OpenHarmony 实战:Dialog 对话框详解
flutter·wpf
ou.cs1 天前
WPF TreeView 自动展开所有节点:附加行为(Attached Behavior)保姆级实现教程
c#·.net·wpf
一念春风1 天前
可视化视频编辑(WPF C#)
开发语言·c#·wpf