如何为Xamarin表单模板创建ViewModel?

时间:2018-08-10 08:08:39

标签: xamarin xamarin.forms

我有从ContentView继承的Template1。出于这个问题的目的,我删除了模板中的许多内容以使其变得简单。

<?xml version="1.0" encoding="UTF-8"?>
<ContentView xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:Japanese;assembly=Japanese" x:Class="Japanese.Template1" x:Name="this">
   <Label Grid.Column="0" Text="{Binding Text, Source={x:Reference this}}" />

</ContentView>

和Template1 C#后端

namespace Japanese
{
    public partial class Template1 : ContentView
    {
        public CardOrderTemplate()
        {
            InitializeComponent();
        }
    }
}

我希望此模板在此类中共享绑定,因此我尝试了一些不同的方法来执行此操作,但似乎没有任何效果。这就是我正在尝试的。不确定,但是我想我需要为模板使用ViewModel之类的东西,但是我不确定如何去实现它。

namespace Japanese
{
    public class SegBase : ContentView
    {

         public static readonly BindableProperty TextProperty = BindableProperty.Create(nameof(Text), typeof(string), typeof(SegTemplate), default(string));
    public string Text
    {
        get { return (string)GetValue(TextProperty); }
        set { SetValue(TextProperty, value); }
    }
    }
}

有人知道我该怎么做吗?我尝试使Template1类从SegBase继承,但是它给了我一个错误,因为XAML是ContentView类型,而C#不是从ContentView继承。

0 个答案:

没有答案