xamarin.forms中Xaml的可重用性用户控件

Vin*_*ena 2 xamarin.forms

我正在尝试一种新的方法,即XAML在xamarin.forms中进行应用.此时我面临着重用我的堆栈布局的问题,该布局具有图像和标签.我如何使用XAML在不同的页面中重用我的布局.

Wiz*_*che 10

实际上,您可以在单独的XAML文件中定义自定义组件,然后只需将组件链接到您需要的任何位置即可.

例如,带有图像的标签可以在专用的XAML文件中组合在一起:

<?xml version="1.0" encoding="utf-8" ?>
<StackLayout xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="UserControls.ImageWithTitle"
             VerticalOptions="Center" HorizontalOptions="Center" >
    <Label HorizontalOptions="Center"
           x:Name="TitleLabel" />
    <Image Source="noimage.png" />
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

在.cs文件中,我为TitleLabel定义了一个绑定

public string TitleName
{
     get { return TitleLabel.Text; }
     set { TitleLabel.Text = value; }
}
Run Code Online (Sandbox Code Playgroud)

因此,当您将组件包含在另一个布局上时,您可以直接(或通过绑定)分配标签值:

 <usercontrols:ImageWithTitle TitleName="Home"/>
Run Code Online (Sandbox Code Playgroud)