Объясните пожалуйста - C# (204569)

Формулировка задачи:

Вот нашел в инете образец кода, по обработке события нажатия кнопки. Приложение то было написано с на WPF с применением патерна MVVM. Сам код по отдельности все элементы вроде более менее понятны, а все вместе нет вот сам код : 1. отдел ViewModel: Код C#
 public ICommand ClickCommand { get; set; }
-- идет объявления свойства с целью прибиндить его к кнопке в XAMLE
private void ClickMethod()
        {
            MessageBox.Show("This is click command.");
        }
-- событие возникающее при нажатии на кнопку Код XАML
<Button Content="Click me" HorizontalAlignment="Left" Margin="291,97,0,0" VerticalAlignment="Top" Width="75" 
                Command="{Binding ClickCommand}"/>
Далее класс обработки события: Код C#
namespace WpfApplication.ViewModel
{
    public class Command : ICommand
    {
        #region Constructor
 
        public Command(Action<object> action) 
        {
            ExecuteDelegate = action;
        }
 
        #endregion
 
 
        #region Properties
 
        public Predicate<object> CanExecuteDelegate { get; set; }
        public Action<object> ExecuteDelegate { get; set; }
 
        #endregion
 
 
        #region ICommand Members
 
        public bool CanExecute(object parameter)
        {
            if (CanExecuteDelegate != null)
            {
                return CanExecuteDelegate(parameter);
            }
 
            return true;
        }
 
        public event EventHandler CanExecuteChanged
        {
            add { CommandManager.RequerySuggested += value; }
            remove { CommandManager.RequerySuggested -= value; }
        }
 
        public void Execute(object parameter)
        {
            if (ExecuteDelegate != null)
            {
                ExecuteDelegate(parameter);
            }
        }
 
        #endregion
    }
}
а вот что здесь происходит, по отдельности что то вроде понимаю а все вместе не допираю и с трудом представляю а если надо какое другое событие сделать...как писать хрен его знает, нигде почитать толком не могу методу..уже день по форумам и книгам лажу...капец какой-то(

Код к задаче: «Объясните пожалуйста - C# (204569)»

textual
private void btn1_Click(object sender, RoutedEventArgs e) {
    MessageBox.Show("Hello, World!");
}

6   голосов, оценка 3.333 из 5


СОХРАНИТЬ ССЫЛКУ