我正在尝试将 BoxView 的高度设置为页面的高度(为此我使用 Xamarin Essentials)。BoxView 包含在 StackLayout 中,而 StackLayout 包含在 ScrollView 中,如下所示:
<ScrollView Orientation="Vertical">
<StackLayout>
<BoxView HeightRequest="{Binding height}" x:Name="TestBox" BackgroundColor="Orange" />
<BoxView BackgroundColor="Red" HeightRequest="200" />
</StackLayout>
</ScrollView>
BoxView 的 HeightRequest 是在我的代码后面定义的。
我已经尝试在我的和页面的构造函数中将此变量设置为设备的高度OnAppearing()
,但是两次 boxview 都没有填满整个页面,这是我尝试过的:
public Double height;
public MainPage()
{
InitializeComponent();
height = DeviceDisplay.MainDisplayInfo.Height / DeviceDisplay.MainDisplayInfo.Density;
}
结果:
在设置高度后,我也尝试添加以下内容,但这也不起作用:
this.ForceLayout();
但是,如果我手动设置 HeightRequest,我会得到我想要的结果(但是,这仅适用于我的特定设备):
<BoxView HeightRequest="720" x:Name="TestBox" BackgroundColor="Orange" />
如果 BoxView 包含在 ScrollView 中,如何将 BoxView 的高度绑定到页面的高度?