Xamarin表单在运行时更改框架高度

时间:2018-12-12 05:27:38

标签: c# xaml xamarin xamarin.forms

我要创建一个自定义下拉列表,如下所示。

enter image description here

一旦用户单击框架,我需要通过扩大框架高度进行如下所示的下拉菜单。

enter image description here

<Frame CornerRadius="8" BackgroundColor="{StaticResource LightAirColor}" Padding="10,4,10,4">
    <TableView>
        <TableSection>
            <ViewCell Tapped="OnSortingPaneTapped">
                <StackLayout Orientation="Vertical">
                    <StackLayout Orientation="Horizontal">
                        <Label Text="Arrange By" TextColor="{StaticResource DarkColor}" FontSize="{DynamicResource FontSize16}"/>
                        <Label Text="Date/Time" TextColor="{StaticResource NavigationPrimary}" FontSize="{DynamicResource FontSize16}"/>
                    </StackLayout>
                </StackLayout>
            </ViewCell>
            <ViewCell>
                <StackLayout Orientation="Horizontal">
                    <Label Text="Episode" TextColor="{StaticResource NavigationPrimary}" FontSize="{DynamicResource FontSize16}"/>
                </StackLayout>
            </ViewCell>
            <ViewCell Tapped = "SortJournalByDate">
                <StackLayout Orientation="Horizontal" VerticalOptions="Center">
                    <Label Text="Date/Time" TextColor="{StaticResource NavigationPrimary}" FontSize="{DynamicResource FontSize16}"/>
                </StackLayout>
            </ViewCell>
        </TableSection>
    </TableView>
</Frame>

我尝试使用heightRequest,forceLayout()但没有运气。当用户单击框架时,如何从代码后面更改高度?

1 个答案:

答案 0 :(得分:1)

  1. 您可以将绑定用于身高要求,并在视图模型中进行更改。

  2. 您还可以使用syncfusion组合框达到此目的。

  3. 另一件事,如果您无法更改高度,则可以使用“可见”将其隐藏