2

我正在尝试使用 MVVM 在我的 UI 中的按钮上设置命令。但是,当我单击按钮时,该命令不会执行。该代码基于Jason Dolinger 的示例(第 3 段中的链接)。

看起来应该很简单,所以我敢肯定,一旦发现问题所在,我会感到很傻。

相关代码位如下。命令如下(很简单):

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();
    }
}
4

1 回答 1

5

Navigate应该是财产。绑定仅适用于属性

于 2011-02-19T20:00:46.543 回答