对于Windows 10 UWP应用,我们有ApplicationView.SetPreferredMinSize()和500 x 500的最大最小窗口大小限制。但是Windows 8.1应用程序呢?是否有任何类似的 API 来设置应用程序窗口的最小宽度和高度?
似乎空白 Windows 8.1 应用程序的默认最小高度明显大于空白 Windows 10 UWP 应用程序的高度,我找不到可以设置或更改的位置。
对于Windows 10 UWP应用,我们有ApplicationView.SetPreferredMinSize()和500 x 500的最大最小窗口大小限制。但是Windows 8.1应用程序呢?是否有任何类似的 API 来设置应用程序窗口的最小宽度和高度?
似乎空白 Windows 8.1 应用程序的默认最小高度明显大于空白 Windows 10 UWP 应用程序的高度,我找不到可以设置或更改的位置。
我想知道现在是否可以为它们更改这个最小高度和宽度。
是的,我们可以使用反射在 Windows 8.1 应用程序的运行时调用ApplicationView.SetPreferredMinSize
方法来实现您想要的。以下是一个简单的示例:
var appView = Windows.UI.ViewManagement.ApplicationView.GetForCurrentView();
var setPreferredMinSizeMethod = appView.GetType().GetRuntimeMethod("SetPreferredMinSize", new Type[] { typeof(Size) });
if (setPreferredMinSizeMethod != null)
{
setPreferredMinSizeMethod.Invoke(appView, new object[] { new Size(300, 300) });
}
但请注意,在 Windows 10 上,Windows 8.1 应用程序的 ApplicaitonView 主要由系统控制。如果没有必要,请不要使用反射来执行此操作。