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

UWP窗口最小尺寸设置不生效,如何修改窗口最小尺寸?

解决UWP窗口最小尺寸无法修改的问题

核心原因

UWP平台本身存在默认的最小窗口尺寸限制,且SetPreferredMinSize如果在窗口未完全初始化时调用(比如MainPage构造函数阶段),大概率不会生效。另外,若你的UWP应用面向桌面端,还需确认是否启用了桌面扩展功能——未启用的话,窗口尺寸限制会更严格。

可行解决方案

1. 延迟到窗口加载完成后执行设置

把尺寸设置代码放到Loaded事件中,确保窗口已完成初始化:

public sealed partial class MainPage : Page
{
    public MainPage()
    {
        this.InitializeComponent();
        this.Loaded += MainPage_Loaded;
    }

    private void MainPage_Loaded(object sender, RoutedEventArgs e)
    {
        // 设置启动窗口尺寸
        ApplicationView.PreferredLaunchViewSize = new Size(1000, 800);
        ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
        
        // 设置最小尺寸,注意不能低于系统允许的下限
        var appView = ApplicationView.GetForCurrentView();
        // 先尝试调整到目标尺寸,再设置最小限制
        if (appView.TryResizeView(new Size(700, 500)))
        {
            appView.SetPreferredMinSize(new Size(700, 500));
        }
    }
}

2. 启用桌面扩展(桌面端UWP专属)

如果是面向Windows 10/11桌面的UWP应用,需在Package.appxmanifest中启用桌面扩展:

  • 可视化操作:打开Package.appxmanifest,切换到功能选项卡,勾选桌面扩展
  • 直接编辑XML:在<Capabilities>节点下添加以下内容:
<Capability Name="runFullTrust" />
<Extension Category="windows.fullTrustProcess" Executable="你的可执行文件名.exe" />

启用后,桌面端UWP的窗口尺寸限制会大幅放宽,支持更小的窗口规格。

3. 遵守系统允许的最小尺寸范围

SetPreferredMinSize不能设置任意小的尺寸,系统有硬性下限:

  • 普通UWP应用:最小宽度通常为500,高度320
  • 启用桌面扩展后:最小宽度可低至192,高度48
    若设置的尺寸低于系统下限,调用会被直接忽略,窗口将保持系统默认的最小尺寸。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 14:17:45