You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让WinUI 3应用启动时窗口最大化?

解决应用强制全屏启动的问题
  • 检查窗口初始化配置
    不管使用Win32、Qt、WPF还是其他框架,优先排查窗口创建时的显示样式参数:

    • Win32:避免使用WS_POPUP+SW_SHOWMAXIMIZED组合,改用WS_OVERLAPPEDWINDOW搭配SW_SHOWNORMAL
    • Qt:替换QWidget::showFullScreen()为QWidget::show(),或初始化时设置setWindowState(Qt::WindowNoState)
    • WPF:把主窗口的WindowState设为WindowState.Normal,WindowStyle设为WindowStyle.SingleBorderWindow
  • 调整渲染库启动参数
    如果基于DirectX、OpenGL这类渲染库开发,检查渲染上下文的创建配置:

    • DirectX:创建交换链时不要设置DXGI_SWAP_CHAIN_FLAG_FULLSCREEN,启用窗口模式相关标志
    • OpenGL:使用glfwCreateWindow时不传入GLFW_FULLSCREEN参数,直接指定目标窗口的宽高数值
  • 排查系统与驱动设置
    部分系统或显卡驱动会强制应用全屏,可做以下调整:

    • 显卡控制面板(NVIDIA/AMD):找到对应应用,关闭“全屏优化”“强制全屏”选项
    • Windows系统:在应用属性的「兼容性」标签勾选“禁用全屏优化”,或关闭设置→游戏→游戏模式
  • 代码示例(WPF)
    在App.xaml.cs的启动逻辑中强制指定窗口状态:

    protected override void OnStartup(StartupEventArgs e)
    {
        base.OnStartup(e);
        var mainWindow = new MainWindow();
        mainWindow.WindowState = WindowState.Normal;
        mainWindow.WindowStyle = WindowStyle.SingleBorderWindow;
        mainWindow.Show();
    }
    

内容的提问来源于stack exchange,提问作者Thrasherx6

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 15:54:52