XAML 调整窗口大小和窗口内的所有元素

Posted

技术标签:

【中文标题】XAML 调整窗口大小和窗口内的所有元素【英文标题】:XAML Resizing window and all elements inside window 【发布时间】:2020-10-26 02:16:31 【问题描述】:

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

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

    有没有办法获取窗口的大小并修改所有元素及其位置/边距等,以便它们随窗口缩放?

    有没有办法制作一个包含游戏窗口的 4k 窗口,但窗口本身会缩放,这样游戏窗口就不必进行任何缩放工作,因为它会随着包含它的窗口自动缩放?

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

【问题讨论】:

【参考方案1】:

使用 Viewbox 将完成我想做的事情。

【讨论】:

以上是关于XAML 调整窗口大小和窗口内的所有元素的主要内容,如果未能解决你的问题,请参考以下文章

C#,实现窗口大小改变时窗口内的控件自动调整位置和大小时,groupbox内的控件为啥不自动调整

C#,实现窗口大小改变时窗口内的控件自动调整位置和大小时,groupbox内的控件为啥不自动调整??求解

如果它比 WPF XAML 中的窗口大,如何缩放字体大小以适应窗口?

将画布大小调整为窗口/用户控件大小

当窗口调整响应设计大小时,div 内的图像会调整大小

使行扩展元素,即 extjs 网格和图表在窗口调整大小时调整大小