【发布时间】:2018-05-03 16:51:27
【问题描述】:
我需要在运行时访问 WPF 用户控件的设计高度和设计宽度。我知道这是不可能的,所以我会解释我为什么要这样做,希望有人能提供一个正确方法的例子。
从一个 C# winforms 应用程序中,我打开一个新窗口,其中包含一个非常大的 WPF 用户控件。如果我正在运行的监视器可以处理它,我希望它以用户控件的完整设计大小打开窗口。如果我正在运行的显示器无法处理它,那么我想打开尽可能大的窗口,在屏幕的每一侧留下 1 个像素。所以在显示用户控件之前需要知道用户控件当前的设计宽度和高度。
我想避免在 winforms 应用程序中对值进行硬编码,或者在用户控件中使用未绑定的公共属性,因为这样我必须相信其他开发人员在更改用户控件时会更新它们。我不知道是否可以将局部变量绑定到 designheight 或 designwidth,或者如何在 XAML 中对其进行编码。由于我对 WPF 了解不多,所以可能还有其他方法可以达到我不知道的目标。
感谢您的帮助和建议。
【问题讨论】: