单击MVVM按钮时获取commandparameter值

时间:2017-06-21 10:03:41

标签: c# xaml mvvm command mvvm-light

其他例子不起作用或与我的完全不同。

所以我的XAML页面上有一个按钮,如下所示:

 <Button Width="100"
         Height="50"
         Margin="0 0 10 0"
         Command="{Binding MenuButtonViewModel.MenuButtonCommand, Source={StaticResource Locator}}"
         CommandParameter="{Binding Parameter}"
         IsEnabled="{Binding IsEnabled}">

在我的ViewModel上:

    public RelayCommand MenuButtonCommand
    {
        get
        {
            return new RelayCommand(() =>
            {
            });
        }
    }

问题是如何在ViewModel上获取命令参数的值?

    public RelayCommand<String> MenuButtonCommand
    {
        get
        {
            return new RelayCommand((parameter) =>
            {
                 Text = parameter;
            });
        }
    }

这不起作用,不知道怎么做而不必使用codebehind将commandparameter值传递给ViewModel。

1 个答案:

答案 0 :(得分:0)

好的找到了解决方案:

    public RelayCommand<string> Command
    {
        get
        {
            return new RelayCommand<string>(parameter =>
            {
                var str = parameter;
            });
        }
    }

谢谢你们。