C# MvvmCross绑定到ViewModel本身
我有一个特定的用例,对于UITableViewCell,我从整个对象生成一个属性标签。由于对象作为ViewModel本身传递,因此我使用了以下Fluent绑定:C# MvvmCross绑定到ViewModel本身,c#,binding,mvvmcross,C#,Binding,Mvvmcross,我有一个特定的用例,对于UITableViewCell,我从整个对象生成一个属性标签。由于对象作为ViewModel本身传递,因此我使用了以下Fluent绑定: set.Bind(this.MyLabel).For(v => v.AttributedText).To(vm => vm).WithConversion<MyLabelConverter>(); set.Bind(this.MyLabel).For(v=>v.AttributedText).To(vm=>vm
set.Bind(this.MyLabel).For(v => v.AttributedText).To(vm => vm).WithConversion<MyLabelConverter>();
set.Bind(this.MyLabel).For(v=>v.AttributedText).To(vm=>vm.WithConversion();
这导致转换器获得ViewModel对象本身,该对象具有所需的所有属性,并从中生成标签内容
我们正在转换到西藏绑定,我找不到有关绑定到根项的任何信息。以前,我们将ViewModel
实例设置为vm
,但是对于西藏绑定,没有对它的引用-类似于标准的Microsoft XAML绑定
但是,使用XAML绑定时,
可以转换为ViewModel本身。同样的功能是否也适用于西藏,或者它是一个未实现的功能?你说得对,
就是这样做的
例如(在.axml文件上):
local:MvxBind=“Text MyLabel(.)”
这个绑定语句将整个DataContext绑定到文本属性/目标绑定,它还使用
MyLabelConverter
进行转换。没错,
就是这样做的
例如(在.axml文件上):
local:MvxBind=“Text MyLabel(.)”
这个绑定语句将整个DataContext绑定到文本属性/目标绑定,它还使用
MyLabelConverter
进行转换。Yup,同时发现了它。这应该包括在文档中,即使只是一个简单的旁注,说明绑定到整个DataContext的工作方式与Microsoft的数据绑定相同。@fonix232如果省略$SourcePath$或使用单个句点,您可以在下面的瑞士绑定中找到它,然后使用的源是整个ViewModel。
@Plac3Hold3r,它仅与瑞士绑定格式相关。对这句话稍加扩展(“这也适用于西藏绑定”)会使它更干净。@fonix232的确,文档中并不是非常清楚,但瑞士是2013年初重写绑定系统的代码名。西藏随后扩展了瑞士绑定语法。因此,从某种意义上说,瑞士的一切仍在西藏的约束体系之内。Rio和Fluent绑定系统提供了不同的方法和语法,s.Yup同时发现了它。这应该包括在文档中,即使只是一个简单的旁注,说明绑定到整个DataContext的工作方式与Microsoft的数据绑定相同。@fonix232如果省略$SourcePath$或使用单个句点,您可以在下面的瑞士绑定中找到它,然后使用的源是整个ViewModel。
@Plac3Hold3r,它仅与瑞士绑定格式相关。对这句话稍加扩展(“这也适用于西藏绑定”)会使它更干净。@fonix232的确,文档中并不是非常清楚,但瑞士是2013年初重写绑定系统的代码名。西藏随后扩展了瑞士绑定语法。因此,从某种意义上说,瑞士的一切仍在西藏的约束体系之内。Rio和Fluent绑定系统提供了不同的方法和语法。