mvvmcross绑定后禁用Xamarin iOS按钮
问题描述:
我有一个绑定到mvxCommand的按钮。绑定后,按钮被禁用。在绑定之前,他已启用。mvvmcross绑定后禁用Xamarin iOS按钮
任何人都可以告诉我为什么会发生这种情况?
笔者认为:
public override void ViewDidLoad()
{
Debug.WriteLine("VatButton6 = " + VatButton6.Enabled); // this is true
var set = this.CreateBindingSet<CreatePaymentView, CreatePaymentViewModel>();
set.Bind(AmountTxt).To(vm => vm.Amount);
set.Bind(ReferenceTxt).To(vm => vm.Reference);
set.Bind(VatButton6).To(vm => vm.RegisterVatCommand); //CommandParameter("21%");
set.Apply();
Debug.WriteLine("VatButton = " + VatButton6.Enabled); // this is false;
}
我的命令:
public IMvxCommand RegisterVatCommand
{
get { return new MvxCommand(RegisterVat); }
}
public void RegisterVat()
{
// switch (vat)
// {
// case "21%":
// Vat = 21;
// break;
// case "6%":
// Vat = 6;
// break;
// case "0%":
// Vat = 0;
// break;
// case "nvt":
// Vat = -1;
// break;
// default:
// throw new ArgumentException("invalid button title");
// }
}
答
我不能发表评论,但你可以尝试,并删除其他两个绑定
set.Bind(AmountTxt).To(vm => vm.Amount);
set.Bind(ReferenceTxt).To(vm => vm.Reference);
然后测试它是否有效?
我复制了你的代码,它对我来说工作得很好,所以它没有任何问题。