Introduction
Part of planning your app's architecture is deciding how the user moves between pages. Should users go forward and backward through a sequence of pages? Does your app have one start page, or are there several top-level pages that are equally important? Your choice of navigation must work well with your app's content. It should also feel native to each platform you target.
Suppose you're writing an app for a planetarium by using .NET MAUI. You want to generate interest in astronomy by presenting astronomical facts and concepts that are relevant to everyday life. The app should have pages covering sunrise and sunset, lunar phases, astronomical bodies, and an About page. Your job is to design and implement an intuitive navigation pattern for these pages.
In this module, you learn how to use tabbed pages to implement an app that presents data on multiple pages. You learn when this navigation pattern is appropriate, and how you can customize the behavior of tabbed pages. You also learn how to combine tabbed pages with navigation pages that use the navigation stack.
Learning objectives
In this module, you learn how to:
- Implement flyout navigation with .NET MAUI Shell.
- Implement tab navigation with .NET MAUI Shell.
- Navigate between pages within tabbed pages.
Prerequisites
- Visual Studio 2022 with the .NET MAUI workload installed
- Optional: Visual Studio Code with the .NET MAUI Extension and .NET SDK with the .NET MAUI workload installed
- Familiarity with C# and .NET
Requirements for .NET MAUI development
To create .NET MAUI apps with .NET 8, you need to install Visual Studio version 17.8 or newer with the following workload installed:
- .NET Multi-Platform App UI development
Additionally, if you want to build .NET MAUI Blazor apps, you must install the ASP.NET and web development workload.
See the documentation for a walkthrough of setup.
Development with Visual Studio Code
If you're developing on macOS or Linux, you'll need to install Visual Studio Code and the .NET MAUI Extension along with the .NET SDK and .NET MAUI Workload. See the documentation for a walkthrough of setup.