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 如何设置窗口的最小尺寸 的相关文章

  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • 结构化绑定中缺少类型信息

    我刚刚了解了 C 中的结构化绑定 但有一件事我不喜欢 auto x y some func is that auto正在隐藏类型x and y 我得抬头看看some func的声明来了解类型x and y 或者 我可以写 T1 x T2 y
  • 如何将 std::string& 转换为 C# 引用字符串

    我正在尝试将 C 函数转换为std string参考C 我的 API 如下所示 void GetStringDemo std string str 理想情况下 我希望在 C 中看到类似的东西 void GetStringDemoWrap r
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 根据属性的类型使用文本框或复选框

    如果我有这样的结构 public class Parent public string Name get set public List
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 无限循环与无限递归。两者都是未定义的吗?

    无副作用的无限循环是未定义的行为 看here https coliru stacked crooked com view id 24e0a58778f67cd4举个例子参考参数 https en cppreference com w cpp
  • 对类 static constexpr 结构的未定义引用,g++ 与 clang

    这是我的代码 a cp p struct int2 int x y struct Foo static constexpr int bar1 1 static constexpr int2 bar2 1 2 int foo1 return
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 如何获取 EF 中与组合(键/值)列表匹配的记录?

    我有一个数据库表 其中包含每个用户 年份组合的记录 如何使用 EF 和用户 ID 年份组合列表从数据库获取数据 组合示例 UserId Year 1 2015 1 2016 1 2018 12 2016 12 2019 3 2015 91
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • 为什么使用小于 32 位的整数?

    我总是喜欢使用最小尺寸的变量 这样效果就很好 但是如果我使用短字节整数而不是整数 并且内存是 32 位字可寻址 这真的会给我带来好处吗 编译器是否会做一些事情来增强内存使用 对于局部变量 它可能没有多大意义 但是在具有数千甚至数百万项的结构
  • 如何实例化 ODataQueryOptions

    我有一个工作 简化 ODataController用下面的方法 public class MyTypeController ODataController HttpGet EnableQuery ODataRoute myTypes pub
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • C++ 中的 include 和 using 命名空间

    用于使用cout 我需要指定两者 include
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • C++ 中的参考文献

    我偶尔会在 StackOverflow 上看到代码 询问一些涉及函数的重载歧义 例如 void foo int param 我的问题是 为什么会出现这种情况 或者更确切地说 你什么时候会有 对参考的参考 这与普通的旧参考有何不同 我从未在现

随机推荐

  • 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