【问题标题】:"Failed to create target binding for to" in MvvmCross .dialogMvvmCross .dialog 中的“无法为 to 创建目标绑定”
【发布时间】:2013-08-22 18:53:54
【问题描述】:

所以我在 iOS 中使用 MvvmCross 和 Monotouch.Dialog,当我做一些非常微不足道的事情时遇到绑定问题 - 事实上,在 Stuart 的 n+1 视频之一中几乎逐字逐句地完成。

鉴于以下观点:

[Register("FirstView")]
public class FirstView : MvxDialogViewController
{
    public override void ViewDidLoad()
    {
        base.ViewDidLoad();
        var bindings = this.CreateInlineBindingTarget<FirstViewModel>();

        Root = new RootElement("Example Root")
        {

            new Section("Search")
            {
                new EntryElement("SearchString", "Search String").Bind(bindings, vm => vm.SearchString)
            }
        };

    }
}

还有这个 ViewModel:

public class FirstViewModel : MvxViewModel
{
    private string _searchString = "search string";
    public string SearchString
    {
        get
        {
            return _searchString;
        }
        set
        {
            _searchString = value; 
            RaisePropertyChanged(() => SearchString);
        }
    }

}

导航到此视图时,我从 Mvx 收到以下错误:

2013-08-22 14:44:51.766 TestApp[11581:c07] MvxBind:Error:  2.02 Empty binding target passed to MvxTargetBindingFactoryRegistry
[0:] MvxBind:Error:  2.02 Empty binding target passed to MvxTargetBindingFactoryRegistry
[0:] 
2013-08-22 14:44:51.869 TestApp[11581:c07] MvxBind:Warning:  2.10 Failed to create target binding for to 
[0:] MvxBind:Warning:  2.10 Failed to create target binding for to 

我不确定绑定失败的原因。如果我在 SearchString 的“Get”中设置一个断点,我确实看到它被击中了。但是,更改 Entry 元素的值不会触发“Set”。

有什么想法吗?

【问题讨论】:

  • Empty binding target,我唯一的直接想法是您是否将设置更改为从MvxTouchDialogSetup继承?
  • 啊!这确实是我错过的。问题解决了。

标签: ios mvvmcross monotouch.dialog


【解决方案1】:

Stuart 的猜测是正确的: 我需要做的就是将我的 Setup 类更改为从 MvxTouchDialogSetup 继承。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多