kullanarak Command
parametrelerini geçirmeyi bilen var mı? Diyelim ki, XAML'den dize kodlanmış bir değer geçirmek istiyorum. XAML'den nasıl geçeceğimi biliyorum, ancak arkasındaki MVVM kodunda nasıl ele alınacağını bilmiyorum. Herhangi bir parametreyi geçmeye gerek olmaması durumunda aşağıdaki kod iyi çalışır.Parametreleri MVVM Komutu'na geçirme
public ICommand AttachmentChecked
{
get
{
return _attachmentChecked ?? (_attachmentChecked = new CommandHandler(() => ExecuteAttachmentChecked(), CanExecuteAttachmentChecked()));
}
}
private void ExecuteAttachmentChecked()
{
}
private bool CanExecuteAttachmentChecked()
{
return true;
}
CommandHandler: parametre ICommand.Execute
yönteminde geçirilen
public class CommandHandler : ICommand
{
private Action _action;
private bool _canExecute;
public CommandHandler(Action action, bool canExecute)
{
_action = action;
_canExecute = canExecute;
}
public bool CanExecute(object parameter)
{
return _canExecute;
}
public event EventHandler CanExecuteChanged;
public void Execute(object parameter)
{
_action();
}
}