/
SergeyReHub
/
WPF_Project_TeraTeams
Обзор
Документация
Войти
/
SergeyReHub
/
WPF_Project_TeraTeams
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ViewModel/ViewModelComand.cs
50 строк
1 KB
SergeyReHub
Code_commit
08 дек 2024, 11:43
08 дек 2024, 11:43
33f488f
Код
Авторство
О чём код?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Input; namespace CursovayaRybakov.ViewModel { public class ViewModelComand : ICommand { // fields private readonly Action<object> _executeAction; private readonly Predicate<object> _canExecuteAction; // Constructions // С проверкой public ViewModelComand(Action<object> executeAction, Predicate<object> canExecuteAction) { _executeAction = executeAction; _canExecuteAction = canExecuteAction; } // Без прповерки public ViewModelComand(Action<object> executeAction) { _executeAction = executeAction; _canExecuteAction = null; } //events public event EventHandler CanExecuteChanged { add { CommandManager.RequerySuggested += value; } remove { CommandManager.RequerySuggested -= value; } } public bool CanExecute(object parameter) { return _canExecuteAction == null ? true : _canExecuteAction(parameter); } public void Execute(object parameter) { _executeAction(parameter); } } }