在Xamarin.Forms中创建MasterDetailPage菜单项的最佳方法是什么

时间:2017-05-09 05:10:58

标签: xamarin.forms menuitem master-detail

我在我的Xamarin.Forms应用程序中使用MasterDetailPage。

要创建菜单项,我使用按钮

<MasterDetailPage.Master>
    <ContentPage Title="Menu">
        <StackLayout Orientation="Vertical">
            <Button Text="Club-House" Command="{Binding ClubHouseCommand}" />
            <Button Text="Parcours" />
            <BoxView VerticalOptions="CenterAndExpand" />
            <Button Text="A propos" Command="{Binding AProposCommand}" VerticalOptions="End" />
        </StackLayout>
    </ContentPage>
</MasterDetailPage.Master>

有更好的方法吗?我正在考虑更像 menuish 之类的东西,比如MenuItem或其他。

由于

1 个答案:

答案 0 :(得分:0)

在母版页中实现菜单没有任何标准。

您可以使用

  1. 的ListView
  2. StackLayout
  3. 网格
  4. 或组合。 StackLayout和ListView很可能是您的最佳选择。我个人选择StackLayout,因为它比ListView更快地编写代码和渲染,这可能带来更多问题而不是优势。但是,如果我有一个大菜单(我试图避免),ListView可能会更快编码。但ListView通常用于动态加载数据,而不是静态数据。

    至于元素,最常见的是

    1. 按钮
    2. 标签
    3. 虽然按钮是为点击设计的,但有时我会移动到标签,如果我不想撤消所有默认样式,并使用TapGestureRecognizer。

      您可以为菜单项创建新的用户控件,以避免代码复制。

      总而言之,没有标准。使编码和理解变得容易,并快速渲染。你如何做到这一点,取决于你的要求。