MAUI+Blazor: タイトル バーと質問を非表示にする

序文

最近、MAUI+Blazor の開発を勉強していて、ネイティブのタイトル バーが非常に醜いという問題を発見しました。

関連記事

MAUI デスクトップのタイトルバーの設定とウィンドウの調整

MAUI Windows タイトルバーを完全に非表示にする方法は? #15142

MAUI タイトルバーを削除してウィンドウサイズを修正するにはどうすればよいですか?
.NET MAUI: シェルを使用するときにナビゲーション バー/タイトル バーを非表示にする方法はありますか?

コード

ここに画像の説明を挿入
ここに画像の説明を挿入

#if WINDOWS
            builder.ConfigureLifecycleEvents(events =>
            {
    
    
                // Make sure to add "using Microsoft.Maui.LifecycleEvents;" in the top of the file 
                events.AddWindows(windowsLifecycleBuilder =>
                {
    
    
                    windowsLifecycleBuilder.OnWindowCreated(window =>
                    {
    
    
                        window.ExtendsContentIntoTitleBar = false;
                        var handle = WinRT.Interop.WindowNative.GetWindowHandle(window);
                        var id = Microsoft.UI.Win32Interop.GetWindowIdFromWindow(handle);
                        var appWindow = Microsoft.UI.Windowing.AppWindow.GetFromWindowId(id);
                        if (appWindow.Presenter is OverlappedPresenter pre)
                        {
    
    
                            pre.IsMaximizable = false;
                            pre.IsResizable = false;
                            pre.IsMinimizable = false;
                            pre.SetBorderAndTitleBar(false, false);
                        }
                    });
                });
            });
#endif

境界線が正常に削除されました。
ここに画像の説明を挿入

質問

しかし、ウィンドウ全体をドラッグできないという問題があります。
後で、Windows プラットフォームに特にこの機能がある理由がわかりました。それは、それがカプセル化されていたからです。

  • ウィンドウのドラッグ
  • ウィンドウズーム
  • 窓を隠した
  • 窓を閉めて

これら 4 つの関数ですが、タイトル バーを非表示にすると、これら 4 つの関数を書き換える必要があります。特別なニーズがある場合は、カスタマイズする必要があります。Blazor を使用して記述する場合、これら 4 つの関数を書き直す必要があります。しばらくしたら修正方法を検討します。

それを解決する必要があるのでしょうか?

実際、タイトル バーを非常に複雑に変更する場合を除き、これを解決する必要はあまりありません。そうでない場合は、解決する必要はありません。MAUI+Blazor の開発は高速性を重視しているためです。私のビュー レイヤーは Blazor を使用して表示し、間接的に C# コードを呼び出します。ビュー ロジックは Blazor 自体によって処理されます。タイトル バーを本当にカスタマイズしたい場合は、タイトル バーを非表示にして、最初からやり直してください。

おすすめ

転載: blog.csdn.net/qq_44695769/article/details/132266838