代码中的 MvvmLight 绑定?

MvvmLight bindings in code?

是否可以在 xamarin 形式的代码中进行 mvvm-light 绑定?

我想这样做是为了类型安全。如果可以,可以举个例子吗?

我设置的绑定是这样的:

button.SetBinding (Button.CommandParameterProperty, "ButtonCommand");

在我的 ViewModel 中 "ButtonCommand" 的定义如下:

public RelayCommand buttonCommand;

public RelayCommand ButtonCommand {
    get {
        ....
    }
}

对于类型安全的解决方案:

在您的页面中:

MyButton.SetBinding<FooViewModel>(ActivityIndicator.IsRunningProperty, model => model.IsBusy);

在你的 FooViewModel 中

    bool _isBusy;
    public bool IsBusy
    {
        get { return _isBusy; }
        set
        {
            Set(ref _isBusy, value);
            LoginCommand.RaiseCanExecuteChanged();
        }
    }