【.NET MAUI】Shell で遊んでみた(その1)

ブログ再開してから、ひたすら .NET MAUI の記事を書いてます。

一つのプロジェクトに長らく関わり続けていると、新技術の習得機会が失われがちなもので、ずっ~と WPF MySQL 界隈で学習が止まってました。

しかし最近、Microsoft から新しい UI がリリースされると聞き、現時点の導入予定はないものの、まずはひたすらアウトプットし続けようと思い立ちました。最初はド素人でも「継続は力なり」で、出力し続けるうちにいつの間にか「熟練」の域に達したりするものです。

 

さて、この .NET MAUI、画面の管理や遷移はいったいどうなってるのか?ちょいと調べたところ、Shell なるものでページ管理できるようです。

docs.microsoft.com

 

モバイルでも動作するよう、WPF まで用いられてきた画面(Window)の概念はなく、ページナビゲーションの機能が用いられているようですね。

docs.microsoft.com

 

どうやらプロジェクトに含まれる AppShell.xaml で編集するようです。MAUI プロジェクトを新規作成すると、AppShell.xaml があるのでこれを開いてみてみます。

 

AppShell の初期状態

 

7行目の

Shell.FlyoutBehavior="Disabled"

がまず気になります。Shell.FlyoutBehavior に設定可能な値は三つ用意されているようです。

 

これをいろいろ変えて起動してみましょうか。まずは「Disabled」の場合。ちなみにイメージはうざいので、MainPage.xaml のコードでコメントアウトしてます。

 

次に「Flyout」。左上にハンバーガーボタンが追加されました。クリックするとメインページにアクセスするポップアップが表示されます。

 

そして「Locked」。ポップアップが固定されました。

 

私は Xamarin.Forms を使ったことないのですが、この辺りのインターフェイスは Xamarin.Forms の機能を継承してるんですかね。

docs.microsoft.com

 

次回も Shell に触れてみようと思います。