Xamarin Xaml将按钮高度绑定到标签高度

Xamarin Xaml将按钮高度绑定到标签高度,xaml,xamarin,button,label,Xaml,Xamarin,Button,Label,我得到了一个标签和一个按钮,在网格中彼此相邻。我正试着让按钮的高度与标签相匹配 当前XAML: <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <!-- vessel label a

我得到了一个标签和一个按钮,在网格中彼此相邻。我正试着让按钮的高度与标签相匹配

当前XAML:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <!-- vessel label and button -->
    <Label StyleClass="headerSub" Grid.Column="0" x:Name="currentVesselLabel" 
           Text="huidig voertuig:"/>
    <Button Grid.Column="1" Text="selecteer voertuig" 
            BindingContext="{x:Reference currentVesselLabel}"
            HeightRequest="{Binding Path=HeightRequest}"
            ClassId="selectVesselButton" x:Name="selectVesselButton"/>
</Grid>


我尝试将
BindingContext
设置到标签,并将按钮的
HeightRequest
属性绑定到标签的
Height
HeightRequest
属性。然而,两者都不起作用。如何将按钮的高度绑定到标签的高度?

原因:

您似乎忘记设置行高。当网格中只有一行时,默认行高将设置为屏幕高度

解决方案:

设置行的高度。请参阅以下代码:

<Grid>

    <Grid.RowDefinitions>

        <RowDefinition Height="Auto"/>

    </Grid.RowDefinitions>

    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <!-- vessel label and button -->
    <Label StyleClass="headerSub" Grid.Column="0" x:Name="currentVesselLabel" 
       Text="huidig voertuig:" VerticalTextAlignment="Center" HeightRequest="60"/>
    <Button Grid.Column="1" Text="selecteer voertuig" 
        BindingContext="{x:Reference currentVesselLabel}"
        HeightRequest="{Binding Path=HeightRequest}"
        ClassId="selectVesselButton" x:Name="selectVesselButton"/>
</Grid>


嘿,问题解决了吗?对不起,我已经好几天没碰电脑了。您的解决方案暂时有效,但我宁愿将其绑定到标签的高度,而不在标签本身上设置HeightRequest(查看我的其他注释)。你知道这可能吗?嘿!很抱歉反应太晚。上面显示的代码是大图的一部分,因此网格行的高度不是问题所在。我绑定高度的方式是绑定到标签的
HeightRequest
,这在当时没有设置。设置此属性(正如您所做的)将按钮的heightrequest绑定到标签的heightrequest。但是,为了回答这个问题,您知道如何在不设置标签高度要求的情况下实现这一点吗?您在哪里设置了标签高度?你能提供一个例子吗?我使用的是
小的
字体大小,否则我没有设置自定义的高度。所有HeaderSub都是
。HeaderSub{字体大小:小;颜色:#bbbbbbbb;边距:5,0,0;}
在CSS文件中。