请问,MAUI windows 可以完美隐藏标题栏吗?不修改应用生命周期的情况下完成
2条回答 默认 最新
threenewbee 2023-04-26 22:45关注var builder = MauiApp.CreateBuilder(); builder.UseMauiApp<App>() .ConfigureFonts(fonts => { fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); }) .ConfigureLifecycleEvents(events => { #if WINDOWS events.AddWindows(windows => windows .OnWindowCreated(window => { //window.SizeChanged += OnSizeChanged; MauiWinUIWindow mauiwin = window as MauiWinUIWindow; if (mauiwin == null) { return; } //关闭扩展内容 mauiwin.ExtendsContentIntoTitleBar = false; mauiwin.Title = "Hello Maui"; 通过maui窗口句柄获取appwindow--- ///这里有个操蛋的东西我用最新版新建的工程没法直接getappwindow所以用了文章里的方法 var wndId = Microsoft.UI.Win32Interop.GetWindowIdFromWindow(mauiwin.WindowHandle); Microsoft.UI.Windowing.AppWindow appwin = Microsoft.UI.Windowing.AppWindow.GetFromWindowId(wndId); //对于OverlappedPresenter的解释文档在这个网址 //https://learn.microsoft.com/zh-tw/windows/windows-app-sdk/api/winrt/microsoft.ui.windowing.overlappedpresenter?view=windows-app-sdk-1.2 //大致就是OverlappedPresenter会设置这个窗口,这个窗口可以和其他窗口重叠,并对窗口标题栏 状态栏 工作栏进行设置,以及其他一些调整窗口的操作 var customOverlappedPresenter = Microsoft.UI.Windowing.OverlappedPresenter.CreateForContextMenu(); appwin.SetPresenter(customOverlappedPresenter); })); #endif }); return builder.Build();https://blog.csdn.net/Sir_aligaduo/article/details/128880940
解决 无用评论 打赏 举报