我想在菜单项中添加此StackLayout并在运行时更改可见性。
<StackLayout>
<StackLayout Orientation="Horizontal">
<Label Text="Shop Autographs" FontSize="14" TextColor="Black" HorizontalOptions="CenterAndExpand" Margin="0,0,20,0"/>
<ImageButton Source="{Binding ShopAutographsMenuIconSource}" Command="{Binding ShopAutographsMenuCommand}" HeightRequest="15" BackgroundColor="Transparent" Margin="0,0,10,0"/>
</StackLayout>
<StackLayout x:Name="shopAutographMenu" IsVisible="{Binding IsShopAutographMenuVisible}">
<Label Text="Most Popular" HorizontalOptions="StartAndExpand"/>
<Label Text="Shop By Category" HorizontalOptions="StartAndExpand"/>
</StackLayout>
</StackLayout>
1条答案
按热度按时间vsmadaxz1#
根据你的描述,你想在Shell中添加一个子菜单项.
首先,我创建
DataTemplateSelector
,检测菜单项标题是Header
还是其他,如果是Header,选择NavigationHeaderTemplate
,然后选择NavigationItemTemplate
。然后将常规ItemTemplate、新Header模板和FlyoutItemTemplateSelector控件添加到AppShell.xaml中的Shell.resources标记中:
将Shell.ItemTemplate添加到主Shell标记中。
最后,使用FlyoutItem。
请注意:使用Xamarin.forms版本4.8.0.1821
截图: