Xamarin.Forms BoxView 高度匹配宽度

Sam*_*ngy 6 xaml xamarin xamarin.forms

我试图将内容页面的框视图水平设置为“FillAndExpand”,同时使高度等于其宽度。到目前为止,对于我所拥有的 xaml:

<ContentPage Title="About" >
<StackLayout>
    <BoxView x:Name ="imageBoxView" Color="AliceBlue" HorizontalOptions="FillAndExpand" />
</StackLayout>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)

但我不知道为高度请求保留什么值。

Sus*_*ver 5

您可以将绑定上下文设置为自身,然后将 绑定HeightRequest到视图的Width.

注意:这会不会在Visual Studio中的XAML预览模式下工作,但会在运行时的工作设备上。

    <StackLayout>
       <BoxView x:Name ="imageBoxView" Color="AliceBlue"
          HorizontalOptions="FillAndExpand" 
          BindingContext="{x:Reference imageBoxView}" 
          HeightRequest="{Binding Width}" />
    </StackLayout>
Run Code Online (Sandbox Code Playgroud)