【发布时间】:2020-05-04 06:01:25
【问题描述】:
我有一个带有相对高度网格的 Xaml 页面
<RowDefinition Height="1*">
<RowDefinition Height="2*">
<RowDefinition Height="3*">
现在在中间行(我不知道它的确切高度,因为它会随显示尺寸缩放)我想要一个圆形图像。由于我没有为图像设置 heightrequest / widthrequest 我想我需要将它绑定到实际高度。
我尝试了很多东西,结果是我的“最新努力”是以下代码,但仍然没有给出想要的结果
<!-- try 1 -->
<yummy:PancakeView BackgroundColor="Aqua" CornerRadius="{Binding Source={RelativeSource Self}, Path=ActualHeight, Converter={converters:PercentageConverter}, ConverterParameter='0,5'}" IsClippedToBounds="True" BorderColor="Black" BorderThickness="4">
<Image Source="{Binding NarrationImage}" ></Image>
</yummy:PancakeView>
<!-- try 2 -->
<Grid x:Name="RefGrid" WidthRequest="1"></Grid>
<Frame
HeightRequest="{Binding Path=ActualHeight, Source={x:Reference RefGrid}}"
WidthRequest="{Binding Path=ActualHeight, Source={x:Reference RefGrid}}"
CornerRadius="{Binding Path=ActualHeight, Source={x:Reference RefGrid}}"
IsClippedToBounds="True" Padding="0" VerticalOptions="CenterAndExpand">
<Image Source="{Binding NarrationImage}" Aspect="AspectFill"></Image>
</Frame>
【问题讨论】:
-
我认为没有办法绑定到布局后将计算的值。如果您坚持这样做,您可能需要在后面的代码中或可能在某些自定义渲染器中处理它。
标签: image xamarin xamarin.forms