Xamarin Forms Shell 多列浮出控件

Xamarin Forms Shell Flyout with multiple columns

我的业务需求是构建一个包含多列的弹出式菜单。菜单将具有所有基本的弹出行为,它必须在左侧有一个狭窄的静态列,其中有 3 个按钮,然后在它旁边有常规的可滚动弹出菜单。此时是否可以在 xamarin forms shell 中为弹出窗口做一个完全自定义的布局?

您可以使用 FlyoutContentTemplate 来做到这一点。

 <Shell.FlyoutContentTemplate>
    <DataTemplate>
       
        <StackLayout Orientation="Horizontal">
            <StackLayout BackgroundColor="Purple">
                <Button Text="home" />
                <Button Text="dash" />
                <Button Text="chat" />
            </StackLayout>
            <CollectionView
                BindingContext="{x:Reference shell}"
                IsGrouped="True"
                ItemsSource="{Binding FlyoutItems}">
                <CollectionView.ItemTemplate>
                    <DataTemplate>
                        <Label
                            FontSize="Large"
                            Text="{Binding Title}"
                            TextColor="Black" />

                    </DataTemplate>
                </CollectionView.ItemTemplate>
            </CollectionView>

        </StackLayout>
    </DataTemplate>
</Shell.FlyoutContentTemplate>