c# - 如何保持 UserControl 的纵横比?

标签 c# wpf user-controls aspect-ratio

有没有人知道如何保持 UserControl 的高/宽比为 1:1?

例如如果高度 > 宽度,则宽度和高度将具有相同的大小,反之亦然。

最佳答案

我不确定这是否有效,但如果您为 SizeChanged 注册一个处理程序事件并在其中放入您的代码,保持纵横比为 1:1。

SizeChangedEventArgs参数具有旧大小和新大小,因此您可以检查哪个已更改并相应地更新另一个。

您可能需要引入一个保护变量,这样您就不会因为更新 HeightWidth< 而获得级联的 SizeChanged 事件.

关于c# - 如何保持 UserControl 的纵横比?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1755329/

相关文章:

c# - 你能理解这段 C 指针代码吗?

c# - WPF C# 应用程序产生两个主窗口的问题

c# - 添加 x :Name to a user control gives error in generated code of page its used in

c# - 应用程序在调试时不会崩溃,但在正常运行时会崩溃

c# - 传入字典的模型项是 'System.Data.Entity.Infrastructure.DbQuery` ,但需要 'System.Collections.Generic.IEnumerable

c# - 将彩色控制台输出捕获到 WPF 应用程序中

c# - 使用 ctrl+z 键在 WPF 中实现我们自己的 Undo 方法/功能并禁用默认的 undo 命令

c# - 使用数据绑定(bind)获取 WPF Listview 以显示 ObservableCollection<T>

c# - 在C# asp.net中动态添加用户控件

c# - ScintillaNET 未显示方法 block 的折叠