Простой WPF MVVM - проблема с коммандой - что не так с этим кодом? - PullRequest
2 голосов
/ 19 февраля 2011

Я пытаюсь настроить команду для кнопки в моем пользовательском интерфейсе, используя MVVM. Команда не выполняется, когда я нажимаю кнопку. Код основан на примере Джейсона Долингера (ссылка в третьем абзаце).

Кажется, это должно быть довольно просто, поэтому я уверен, что почувствую себя глупо, когда узнаю, что не так.

Соответствующие биты кода следуют. Команда выглядит следующим образом (очень просто):

public class NavigateCommand : ICommand
{
    public bool CanExecute(object parameter)
    {
        return true;
    }

    public event EventHandler CanExecuteChanged
    {
        add { CommandManager.RequerySuggested += value; }
        remove { CommandManager.RequerySuggested -= value; }
    }

    public void Execute(object parameter)
    {
        MessageBox.Show("Executed.");
    }
}

XAML выглядит так:

<Button x:Name="btn_ProjectManager" Command="{Binding Navigate}" Content="Test Button">

ViewModel выглядит так:

public class HomeScreenViewModel : DependencyObject
{
    public ICommand Navigate;

    public HomeScreenViewModel()
    {
        this.Navigate = new NavigateCommand();
    }
}

1 Ответ

5 голосов
/ 19 февраля 2011

Navigate должно быть собственностью.Переплет работает только со свойствами

...