WinUI 3 如何设置窗口的最小尺寸

2023-12-23

所以在UWP中,我们可以使用

ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(500, 500));

but

ApplicationView.GetForCurrentView();

在 WinUI 3 中返回 null。 有没有办法设置窗口的最小尺寸


推荐的解决方案,在 GitHub 上实现 https://github.com/WinUICommunity/SettingsUI/blob/ce6bd6a86c07170d2ffcaa5a80c7dc02a2ba5028/src/SettingsUI/Tools/Helpers/WindowHelper/WindowHelper.ReSizeWindow.cs,就是使用P/Invoke来调用窗口子类化函数 https://learn.microsoft.com/en-us/windows/win32/controls/subclassing-overview#subclassing-controls-using-comctl32dll-version-6 SetWindowSubclass and DefSubclassProc:

  1. 编写一个静态 WndProc 方法来处理WM_GETMINMAXINFO,然后将任何其他窗口消息转发到原始 WndProc,通过DefSubclassProc (or CallWindowProc在示例中),尽管请注意缺点 https://learn.microsoft.com/en-us/windows/win32/controls/subclassing-overview#disadvantages-of-the-old-subclassing-approach).
  2. 通过以下方式注册您的新 WndProcSetWindowSubclass (or SetWindowLongPtr在示例中)。

这来自XAML GitHub 存储库上的问题 https://github.com/microsoft/microsoft-ui-xaml/issues/2945.

See 这个类似的问题 https://stackoverflow.com/questions/72825683/wm-getminmaxinfo-in-winui-3-with-c and 这个其他类似的问题 https://stackoverflow.com/questions/72755645/how-can-i-add-a-minimum-size-in-winui-3了解更多信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WinUI 3 如何设置窗口的最小尺寸 的相关文章

随机推荐

  • Hubot Slack 机器人可以存储会话吗

    我正在尝试实现简单的松弛机器人 所以我已经配置了hubot这将从以下位置获取输入slack并将其传递给我的网络应用程序 django app 并且它将采取任何响应django app并会回复松弛 在此过程中 我尝试将会话存储在django
  • 使用任务库的 Amazon S3 异步上传

    我有一个将文件上传到 Amazon S3 的 Windows 表单 我尝试实现内置的异步方法 但似乎工作不正常 所以我认为最好的方法是实现 System Threading Tasks 我的实际代码如下所示 public void Uplo
  • 删除 JAX-WS SOAP 响应中的元素

    我有以下 JAX WS 方法 public School createUpdateSchool Perks reqeustData DataHandler contentData 在我的 SOAP 响应中
  • 我可以免受 SQL 注入攻击吗?

    我使用一个简单的 cms 作为我的网站的后端 我可以在其中更新新闻等 我希望避免 SQL 注入 所以我想知道这段代码是否被认为是安全的 或者我是否可以采取一些措施使其更安全 if POST if isset POST title and i
  • C++如何从包含的类中调用父类方法?

    我试图从包含的对象调用父类方法 但以下代码没有成功 标准的做法是什么 我四处搜索 这似乎适用于继承的对象 但不适用于包含的对象 甚至将其称为 父类 是否正确 或者它被称为 Owner 类 class Parent private Child
  • 将两列 Pandas 数据框转换为以第一列作为键的列表字典

    我有以下数据框 import pandas as pd df pd DataFrame ClusterID 1 2 2 1 3 Genes foo qux bar cux fii 看起来像这样 ClusterID Genes 0 1 foo
  • C# 读取包含不同编码字符的 XML 时出现问题

    我在读取 XML 时遇到了问题 解决办法已经找到了 但是还有一些问题 不正确的 XML 文件采用 UTF 8 编码 并且在其标头中具有适当的标记 但它还包含一个以 UTF 16 编码的字符 此代码用于读取 XML 文件以验证其内容 var
  • 选择并聚焦已存在的窗口

    我经营一个电子商务网站 当客户提交订单时 我需要让这个弹出窗口正常工作 理想情况下 当订单成功页面加载时会出现弹出窗口 但弹出窗口拦截器会阻止这种情况 相反 当用户单击 确认订单 按钮时 我会生成弹出窗口 但这会掩盖结帐在订单完成之前重定向
  • 在程序文件名中使用带有空格的 Runtime.exec 时出现“无法运行程序”

    我使用下面的代码打开 sample html 文件 String filename C sample html String browser C Program Files x86 Google Chrome Application chr
  • FFmpeg 在音频叠加前后创建了一个小的可听见的 dropout_transition,我该如何删除它?

    file1 wav 长 25 分钟 file2 wav 的长度为 20 秒 File2 wav 延迟到 file1 wav 的末尾 并且两者 混合 在一起 延迟效果完美 并覆盖到 25 分钟 file1 wav 文件末尾的正确位置 我的问题
  • 石英触发器不会立即触发

    我想使用 jdbc 数据存储通过quartz调度程序立即执行该作业 然而 即使我使用 now 或调用 triggerJob 进行调度 调度和触发触发之间也会有 20 30 秒的延迟 我尝试用一 个简单的触发器来执行该作业 JobKey ke
  • 获取集合 mongodb 内所有文档中多个元素的频率

    这就是我的问题 我是 mongodb 的新手 并且有一个集合 其中的文档保存如下 id oid 60626db173b4ca321c02ee3e year 2021 name Book 1 authors Joe B Jessica K c
  • 广度优先或深度优先搜索

    我知道这个算法是如何工作的 但无法决定何时使用哪种算法 是否有一些指导方针 其中一个比其他人表现更好或有任何考虑因素 非常感谢 如果您想找到步数最短的解决方案 或者您的树具有无限高度 或非常大 您应该首先使用广度 如果您有一棵有限树并且想要
  • MySQL 错误“空字符串作为 ! 字符的参数”

    我有一个非常简单的查询 select from tablename where keyvar is not null order by keyvar 该查询之前有效 但由于某种原因现在我收到错误 错误 格式化 SQL 查询时出错 作为参数给
  • 如何让 QFileDialog 提示覆盖?

    我有一个 QDialog 可以像这样打开 QFileDialog QFileDialog fd this fd setFileMode QFileDialog AnyFile if fd exec save data to a file 很
  • 如何统计具有相同属性值的元素

    我确信这是一件容易的事 但我只是只见树木不见森林 我有一个如下所示的 XML
  • 对于 Windows exe/二进制文件,证书、签名和指纹之间有什么区别?

    我试图了解 Windows 可执行文件和二进制文件上下文中签名 指纹和证书之间的区别 在发布这个问题之前我在互联网上查了一下 但我没有得到简明的区分 也许我对这三个术语的理解一开始就不清楚 有人可以帮我解决这个问题吗 A 证书是通常使用 X
  • 如何通过一个数组列展平 pySpark 数据框? [复制]

    这个问题在这里已经有答案了 我有一个像这样的火花数据框 dbn boro total students sBus 17K548 Brooklyn 399 B41 B43 B44 SB 09X543 Bronx 378 Bx13 Bx15 B
  • “AndroidAnnotations”可靠吗?

    Is Android注解 http code google com p androidannotations 可靠吗 我已经搜索过但找不到很多关于它的文章 评论或教程 我一直在考虑在我的项目中使用这个库 该项目已经有很多用户 在采用它之前
  • WinUI 3 如何设置窗口的最小尺寸

    所以在UWP中 我们可以使用 ApplicationView GetForCurrentView SetPreferredMinSize new Size 500 500 but ApplicationView GetForCurrentV