gpt4 book ai didi

ios - View 层次结构中的 Mvvm 交叉绑定(bind)

转载 作者:行者123 更新时间:2023-11-28 21:21:14 27 4
gpt4 key购买 nike

我在使用 MvvmCross 在 Xamarin.iOS 中创建到自定义 View ( View 层次结构)的绑定(bind)时遇到问题。

我的自定义控件显示一些文本并且只有几个按钮。

在代码中它看起来像这样(简化版,我最后一次尝试)

// Custom control
public class CustomView : MvxView
{
// Views
private TextFieldWithImageButton TextField;
// ...

// Properties
public string Text
{
get
{
return TextField.Text;
}
set
{
TextField.Text = value;
}
}
// ...
}

// ViewModel for Controller
public class MainViewModel : MvxViewModel
{
private string _text = "";
public string Text
{
get { return _text; }
set { _text = value; }
}
// ...
}

// ViewController
public class MainViewController : MvxViewController
{
// Views
private CustomView CustomView;

// ViewModel
public MainViewModel ViewModel;

// ... intialization and other stuff

// Binding ... called from ViewDidLoad method
private void CreateBinding()
{
var set = CustomView.CreateBindingSet<CustomView, MainViewModel>();
set.Bind(CustomView.Text).To(ViewModel.Text);
set.Apply();
}
}

但我总是得到MvxBind:错误:0,21 传递给 MvxTargetBindingFactoryRegistry 的空绑定(bind)目标MvxBind:警告:0,21 无法为 -empty- 的绑定(bind)创建目标绑定(bind)

我已经尝试了很多选项和教程,但到目前为止我无法让它工作。

对于我做错了什么的任何提示,我将不胜感激。

最佳答案

尝试以下操作:

改变这个:set.Bind(CustomView.Text).To(ViewModel.Text);

为此:set.Bind(CustomView).For(c => c.Text).To(vm => vm.Text);

关于ios - View 层次结构中的 Mvvm 交叉绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39758491/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com