Xamarin.Forms使用Xaml语法创建具有继承的BindingContext的自定义视图

时间:2018-07-01 14:47:41

标签: xamarin.forms

我想使用以下XAML语法在Xamarin.Forms中创建一个控件

<MyControl>
    <MyControl.SomeSetting>
        <MySetting Value="{Binding ValueInViewModel}"/>
    </MyControl.SomeSetting>
</MyControl>

MyControl是Xamarin.Forms.View,在WPF,iOS和Android中具有自定义渲染器。

MySetting是一个继承View的类,但这不是视觉元素。它不会出现在屏幕上。我想要的是允许用户使用分层Xaml语法来构建复杂的视图(要应用的许多设置)。

我遇到的问题是BindingContext没有从MyControl继承到MySetting。即使我将MySetting上的BindingContext设置为父级,也不会评估绑定。

我已经在WPF中成功完成了此任务,但想知道在Xamarin.Forms中是否可以做到这一点。

一些问题:

  1. 是否可以以编程方式将视图“ MySetting”添加到父视图“ MyControl”,即使该视图不在屏幕上也可以吗?
  2. 还有其他方法可以将BindingContext继承从父级继承到子级,而子级不在可视树中吗?

0 个答案:

没有答案