removed RelayCommand.cs

This commit is contained in:
Holger Börchers 2020-03-29 22:17:27 +02:00
parent bd7f504a56
commit 97ed0d9be0
2 changed files with 7 additions and 41 deletions

View File

@ -1,35 +0,0 @@
using System;
using System.Windows.Input;
namespace ModernWpfPlayground.MvvmStuff
{
public class RelayCommand : ICommand
{
private readonly Predicate<object>? _canExecute;
private readonly Action<object> _execute;
public RelayCommand(Action<object> execute)
{
_execute = execute;
}
public RelayCommand(Action<object> execute, Predicate<object> canExecute)
{
_canExecute = canExecute;
_execute = execute;
}
public event EventHandler CanExecuteChanged
{
add => CommandManager.RequerySuggested += value;
remove => CommandManager.RequerySuggested -= value;
}
public bool CanExecute(object parameter) => _canExecute?.Invoke(parameter) ?? true;
public void Execute(object parameter)
{
_execute(parameter);
}
}
}

View File

@ -8,6 +8,7 @@ using System.Windows;
using System.Windows.Input;
using Microsoft.Win32;
using ModernWpfPlayground.MvvmStuff;
using Prism.Commands;
namespace ModernWpfPlayground
{
@ -43,11 +44,11 @@ namespace ModernWpfPlayground
public WindowViewModel()
{
ShowDialogCommand = new RelayCommand(async x => await ShowDialogAsync().ConfigureAwait(false));
CloseCommand = new RelayCommand(x => Application.Current.Shutdown());
OpenViewModelCommand = new RelayCommand(x => LoadViewModel());
SaveViewModelCommand = new RelayCommand(x => SaveViewModel());
ResetViewModelCommand = new RelayCommand(x =>
ShowDialogCommand = new DelegateCommand(async () => await ShowDialogAsync().ConfigureAwait(false));
CloseCommand = new DelegateCommand(() => Application.Current.Shutdown());
OpenViewModelCommand = new DelegateCommand(LoadViewModel);
SaveViewModelCommand = new DelegateCommand(SaveViewModel);
ResetViewModelCommand = new DelegateCommand(() =>
{
ResetViewModel();
Path = null;
@ -91,7 +92,7 @@ namespace ModernWpfPlayground
set => SetProperty(value);
}
public RelayCommand ShowDialogCommand { get; }
public ICommand ShowDialogCommand { get; }
public string WelcomeMessage
{