为什么我的Xamarin Forms中的Frame框架内的标签不可见?

12

我正在尝试为Xamarin的标签创建简单的黑色边框。看起来框架内的任何内容都不可见。

这是我的代码:

<Frame BorderColor="Black"   
       CornerRadius="0">
    <Label x:Name="txtText"
           Text="Here"
               TextColor="Black"
               BackgroundColor="White"
               HorizontalOptions="FillAndExpand"
               VerticalOptions="FillAndExpand"
               HorizontalTextAlignment="Center" />
</Frame>

我可以将我的框架中的背景属性设置为任何颜色,这样可以正常工作,但我甚至尝试将其设置为透明,但没有成功。

这是我使用上面代码看到的效果。

enter image description here

我正在使用Visual Studio 2017和Android。

更新

我找到了一个解决办法,但它似乎有点取巧。我将所有内容都放在StackLayout中,将框架的请求高度设置为100,并将填充设置为1。

下面是更新后的代码:

<StackLayout>
    <Frame BorderColor="{DynamicResource PrimaryColour}"   
           CornerRadius="0"
           Padding="1"
           HeightRequest="100">
        <Label x:Name="txtText"
               Text="Here"
               TextColor="{DynamicResource PrimaryColour}"
               BackgroundColor="{DynamicResource SecondaryColour}"
               HorizontalTextAlignment="Center"
               VerticalTextAlignment="Center"/>
    </Frame>
</StackLayout>

尝试将颜色设置为明确的不同值,以验证资源定义没有问题。 - Jason
我已经更新了问题并硬编码颜色。但是我得到了相同的结果。 - Noobie3001
@Noobie3001 这个嵌入在网格中吗? - SushiHangover
在 ContentView 中。我来自 WPF 世界,对 Xamarin 还很陌生。我试图创建一个自定义用户控件(自定义按钮)。我想文档说要使用 ContentView,但不能确定。 - Noobie3001
抱歉,我使用的是旧版的Xamarin Forms,导致出现了错误。因此我建议更新版本。 - Srusti Thakkar
显示剩余4条评论
1个回答

19

框架默认填充20像素,所以如果框架太小,内部的元素将永远不会显示。因此,只需将 padding="0"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接