您可以自己自定义这样的控件。
自定义控件(您可以将其作为内容视图删除):
<Border BackgroundColor="LightBlue">
<Border.StrokeShape>
<RoundRectangle CornerRadius="40"/>
</Border.StrokeShape>
<Grid ColumnDefinitions="8*,2*" BackgroundColor="Transparent">
<Entry BackgroundColor="Transparent" Grid.Column="0"/>
<Label Text="test" BackgroundColor="Transparent" Grid.Column="1" VerticalTextAlignment="Center" HorizontalTextAlignment="Center"/>
</Grid>
</Border>
然后禁用条目的下划线和边框:
对于android和ios,在App.cs的构造函数中添加以下代码:
Microsoft.Maui.Handlers.EntryHandler.Mapper.AppendToMapping("NoBorder", (h, v) =>
{
#if ANDROID
h.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Android.Graphics.Color.Transparent);
#elif IOS
h.PlatformView.BorderStyle = UIKit.UITextBorderStyle.None;
#endif
});
对于 Windows 平台,在 Platforms/Windows 文件夹下的 App.xaml 中添加以下代码。
<maui:MauiWinUIApplication.Resources>
<Thickness x:Key="TextControlBorderThemeThickness">0</Thickness>
<Thickness x:Key="TextControlBorderThemeThicknessFocused">0</Thickness>
</maui:MauiWinUIApplication.Resources>