我希望在整个应用程序中创建一个自定义视图(标签和垂直堆栈中的条目)。要求是当条目没有文本时,上面的标签应该被隐藏,反之亦然。我尝试创建内容视图,但在使用xaml中的自定义控件时无法设置可见性。
CustomControl
using System;
using System.Collections.Generic;
using Xamarin.Forms;
namespace iTrans.CustomControls
{
public partial class LabelEditor : ContentView
{
public LabelEditor()
{
InitializeComponent();
}
void Handle_TextChanged(object sender, Xamarin.Forms.TextChangedEventArgs e)
{
if (string.IsNullOrEmpty(entry.Text))
label.IsVisible = false;
else
label.IsVisible = true;
}
}
}
的Xaml
<?xml version="1.0" encoding="UTF-8"?>
<ContentView xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="iTrans.CustomControls.LabelEditor">
<ContentView.Content>
<Label x:Name="label"></Label>
<Entry x:Name="entry" TextChanged="Handle_TextChanged"/>
</ContentView.Content>
</ContentView>
用法:
<custom:LabelEditor EditorText="hello" LabelText="bye"/>