Socket 简易静态服务器 WPF MVVM模式(二)

command类

标准来说,command会有三种模式,委托命令 准备命令 附加命令

1.DelegateCommand

2.RelayCommand

3.AttachbehaviorCommand

我这个写的是委托命令。

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input;
using 简易静态服务器.Models;

namespace 简易静态服务器.Commands
{
   //实现接口
    public class MainCommand : ICommand
    {
        public event EventHandler CanExecuteChanged
        {
            add { CommandManager.RequerySuggested += value; }
            remove { CommandManager.RequerySuggested += value; }
        }      

        private Func<object,bool> CanExecuteEx;
      
        private Action Exctue;
           
        public MainCommand(Action  Exectue,Func<object,bool>CanExcetue)
        {
            Exctue = Exectue ?? throw new ArgumentNullException("erro");
            CanExecuteEx = CanExcetue;
        }
       
        public bool CanExecute(object parameter)
        {
            var temp = CanExecuteEx(parameter);

            return temp;
        }

        public void Execute(object parameter)
        {
           
            Exctue?.Invoke();
        }
    }
}
复制代码

至于使用哪种,就看你是否用的方便与否了

posted @   ARM830  阅读(350)  评论(0编辑  收藏  举报
编辑推荐:
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
· .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
阅读排行:
· 本地部署 DeepSeek:小白也能轻松搞定!
· 基于DeepSeek R1 满血版大模型的个人知识库,回答都源自对你专属文件的深度学习。
· 在缓慢中沉淀,在挑战中重生!2024个人总结!
· 如何给本地部署的DeepSeek投喂数据,让他更懂你
· 大人,时代变了! 赶快把自有业务的本地AI“模型”训练起来!
点击右上角即可分享
微信分享提示