Gợi ý: Hãy click chọn khuyến mãi mà bạn muốn xem ở bên trên

BÀI VIẾT MỚI

Home » , » [Thư viện WPF] Lớp RelayCommand sử dụng trong mô hình MVVM

[Thư viện WPF] Lớp RelayCommand sử dụng trong mô hình MVVM

Lớp RelayCommand trong mô hình MVVM
public class RelayCommand<T> : ICommand
    {

        private readonly Predicate<T> _canExcute; // Lưu trữ điều kiện để thực hiện command- Thực hiện hàm ủy thác
        private readonly Action<T> _execute; // Lưu trữ hàm ủy thác làm việc gì đó
     
    

        // Khi khởi tạo thì truyền điều kiện ủy thác và hàm ủy thác
        public RelayCommand(Predicate<T> canExecute, Action<T> execute)
        {
            if (execute == null)
                throw new ArgumentNullException("excute null");
            _canExcute = canExecute;
            _execute = execute;
        }


        //Điều kiện để chạy command

        public bool CanExecute(object parameter)
        {
            return _canExcute == null ? true : _canExcute((T)parameter);
        }
        //Hàm ủy thác khi gọi command
        public void Execute(object parameter)
        {
            _execute((T)parameter);
        }

        public event EventHandler CanExecuteChanged
        {
            //Thêm bớt vào cái manager
            add { CommandManager.RequerySuggested += value; }
            remove { CommandManager.RequerySuggested -= value; }
        }



    }

0 nhận xét :

Đăng nhận xét

Các chương trình khuyến mãi đang được cập nhật Đọc ngay!