Должен ли я проверять метод ICommand's CanExecute перед вызовом Execute из процедурного кода?

При использовании ICommands в XAML, WPF использует метод CanExecute для включения или отключения элементов управления, связанных с командой. Но что делать, если я вызываю Execute из процедурного кода? Должен ли я сначала проверить CanExecute, чтобы убедиться, что команда может быть выполнена, или Execute должен позаботиться об этой проверке для меня?

Другими словами, должен ли я сделать это:

if (someCommand.CanExecute(parameter, target))
    someCommand.Execute(parameter, target);

Или просто так:

someCommand.Execute(parameter, target);
8
задан Matthew 4 August 2011 в 14:19
поделиться