将绑定项目传递给 MvxCommand

问题描述 投票:0回答:2
mvvmcross
2个回答
1
投票

正如评论中指出的,使用与this类似的方法解决了问题!

public class MyLinearLayout : LinearLayout
{
    public HhLinearLayout(Context context, IAttributeSet attrs)
        : base(context, attrs)
    {
        Click += LinearLayoutClick;
    }

    public ICommand Command { get; set; }

    public object CommandParameter { get; set; }

    private void LinearLayoutClick(object sender, EventArgs e)
    {
        var command = Command;
        var commandParameter = CommandParameter;

        if (command == null || !command.CanExecute(commandParameter))
        {
            return;
        }

        command.Execute(commandParameter);
    }
}

0
投票

Pedro Lamas 的答案应该标记为正确答案,这对我的完整模型或我的命令的属性有很大帮助。

这样我的物品的整个模型 local:MvxBind="单击 CommandParameter(ViewModelCommand, ViewModelMProperty)"

这样只是一个属性 local:MvxBind="单击CommandParameter(ViewModelCommand, ViewModelMProperty.SubProperty)"

© www.soinside.com 2019 - 2024. All rights reserved.