gpt4 book ai didi

c# - MVVMCross,FieldBinding 插件,iOS,代码绑定(bind)不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:20:11 26 4
gpt4 key购买 nike

我在我的 iOS 应用程序中使用 MVVMCross/Xamarin。我的 ViewModel 的属性定义如下:

public readonly INC<Address> Entity = new NC<Address>();

在哪里

public class Address
{
public string Line1 { get; set; }

public string Line2 { get; set; }

public string Line3 { get; set; }
//other properties...
}

如果我以这种方式绑定(bind),它会起作用:

set.Bind(Line1Text).To("Entity.Line1").TwoWay();

如果我以这种方式进行绑定(bind),它将不起作用并输出警告(见下文):

set.Bind(Line1Text).To(vm => vm.Entity.Value.Line1).TwoWay();

我得到的错误是没有构造绑定(bind)。应用程序输出的警告:

2014-10-08 19:12:15.341 IosTemplate[8442:248933] MvxBind: Warning: 12.63 Unable to bind: source property source not found Property:Value on Address

请指教,如何用 lambda 表达式方式与 INC/NC 进行绑定(bind)。

最佳答案

Please advise, how to do a binding with INC/NC with lambda expression way

Field Binding plugin不附带对流式表达式解析的任何扩展,因此如果不进行额外的工作,就无法以流式形式完成这种类型的链式表达式。

如果您想扩展流式绑定(bind)表达式的解析方式或绑定(bind)的评估方式 - 为 INC 添加一些特殊情况 - 那么我相信这是可以做到的,但它需要一些实验和编码才能做吧。例如,您可以尝试检查和操作 https://github.com/MvvmCross/MvvmCross/blob/3.2/Plugins/Cirrious/FieldBinding/Cirrious.MvvmCross.Plugins.FieldBinding/MvxChainedNotifyChangeFieldSourceBinding.cs#L32 中的 childList。为了从列表中删除 Value 项目 - 尽管这也可能删除偶尔正确的 Value :/也将其作为拉取请求接受回框架。

关于c# - MVVMCross,FieldBinding 插件,iOS,代码绑定(bind)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26267935/

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