XAML 调整大小 window 和 window 中的所有元素

XAML Resizing window and all elements inside window

我有一个用 C# 和 XAML 编写的游戏,但我 运行 遇到了问题。我用来创建游戏的笔记本电脑有一个 4k 显示器,所以我(愚蠢地)将 XAML 设置为 4k window 的规格。当我尝试在较低分辨率的显示器上 运行 时,如您所料,所有元素的大小和位置都错误。重做 window 中的所有内容将是一个巨大的痛苦,我想知道是否有任何方法可以根据 window 大小缩放整个 window 及其所有内容?

我对可能值得探索的潜在解决方案的一些想法:

  1. 有没有办法获取 window 的大小并修改所有元素及其 positions/margins 等,以便它们随之缩放?

  2. 有没有办法制作 4k 的 window 并包含游戏 window,但 window 本身可以缩放以便游戏 window 不需要做任何工作缩放,因为它会自动与包含它的 window 一起缩放?

如果您有任何问题可以帮助您更好地理解我的问题或我的潜在解决方案建议,请告诉我。

使用 Viewbox 可以完成我想要做的事情。