在 Xamarin.Forms 中创建 MasterDetailPage 菜单项的最佳方法是什么
What is the best way to create the MasterDetailPage menu items in Xamarin.Forms
我在 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 或其他。
谢谢
在母版页中实现菜单没有任何标准。
您可以使用
- 列表视图
- 堆栈布局
- 网格
或组合。 StackLayout 和 ListView 很可能是您的最佳选择。我个人选择 StackLayout,因为它比 ListView 编码和呈现更快,这可能带来的问题多于优点。但是,如果我有一个大菜单(我尽量避免),ListView 可能会更快地编写代码。但是 ListView 通常用于动态加载数据,而不是静态数据。
至于元素,最常见的是
- 按钮
- 标签
虽然按钮是为点击而设计的,但有时如果我不想撤消所有默认样式并使用 TapGestureRecognizer,我会转到标签。
您可以为菜单项创建一个新的用户控件,以避免代码复制。
都起来了,没有标准。使其易于编码和理解,并快速呈现。具体如何操作取决于您的要求。
我在 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 或其他。
谢谢
在母版页中实现菜单没有任何标准。
您可以使用
- 列表视图
- 堆栈布局
- 网格
或组合。 StackLayout 和 ListView 很可能是您的最佳选择。我个人选择 StackLayout,因为它比 ListView 编码和呈现更快,这可能带来的问题多于优点。但是,如果我有一个大菜单(我尽量避免),ListView 可能会更快地编写代码。但是 ListView 通常用于动态加载数据,而不是静态数据。
至于元素,最常见的是
- 按钮
- 标签
虽然按钮是为点击而设计的,但有时如果我不想撤消所有默认样式并使用 TapGestureRecognizer,我会转到标签。
您可以为菜单项创建一个新的用户控件,以避免代码复制。
都起来了,没有标准。使其易于编码和理解,并快速呈现。具体如何操作取决于您的要求。