如何在桌面上设置 windows 通用应用程序的最小大小?
How to set min size of windows universal app on desktop?
我想为桌面上的 windows 通用应用程序设置最小尺寸,例如 800x600。
我找到了一个方法
ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(800, 600));
但它不起作用,我仍然可以将 window 拖动到 500x300。
我想念什么?
来自 MSDN:
The largest allowed minimum size is 500 x 500 effective pixels. If you
set a value outside of these bounds, it is coerced to be within the
allowed bounds.
也许这就是原因
对于我的应用程序,我在桌面上将其设置为 运行,启动高度为 480,宽度为 320。
在我主页的代码隐藏文件中,我调用了以下方法:
public MainPage()
{
GetDeviceFormFactorType();
}
public static DeviceFormFactorType GetDeviceFormFactorType()
{
switch (AnalyticsInfo.VersionInfo.DeviceFamily)
{
case "Windows.Mobile":
return DeviceFormFactorType.Phone;
case "Windows.Desktop":
ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size { Width = 320, Height = 480 });
ApplicationView.PreferredLaunchViewSize = new Size { Height = 480, Width = 320 };
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
return DeviceFormFactorType.Desktop;
case "Windows.Tablet":
return DeviceFormFactorType.Tablet;
case "Windows.Universal":
return DeviceFormFactorType.Iot;
case "Windows.Team":
return DeviceFormFactorType.SurfaceHub;
default:
return DeviceFormFactorType.other;
}
}
public enum DeviceFormFactorType
{
Phone,
Desktop,
Tablet,
Iot,
SurfaceHub,
other
}
对于桌面,我可以设置一个大于 500x500 的最小尺寸,如下代码所示。
private void Page_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (e.NewSize.Width < 800 || e.NewSize.Height < 600)
{
ApplicationView.GetForCurrentView().TryResizeView(new Size(800, 600));
}
}
我想为桌面上的 windows 通用应用程序设置最小尺寸,例如 800x600。
我找到了一个方法
ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(800, 600));
但它不起作用,我仍然可以将 window 拖动到 500x300。
我想念什么?
来自 MSDN:
The largest allowed minimum size is 500 x 500 effective pixels. If you set a value outside of these bounds, it is coerced to be within the allowed bounds.
也许这就是原因
对于我的应用程序,我在桌面上将其设置为 运行,启动高度为 480,宽度为 320。
在我主页的代码隐藏文件中,我调用了以下方法:
public MainPage()
{
GetDeviceFormFactorType();
}
public static DeviceFormFactorType GetDeviceFormFactorType()
{
switch (AnalyticsInfo.VersionInfo.DeviceFamily)
{
case "Windows.Mobile":
return DeviceFormFactorType.Phone;
case "Windows.Desktop":
ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size { Width = 320, Height = 480 });
ApplicationView.PreferredLaunchViewSize = new Size { Height = 480, Width = 320 };
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
return DeviceFormFactorType.Desktop;
case "Windows.Tablet":
return DeviceFormFactorType.Tablet;
case "Windows.Universal":
return DeviceFormFactorType.Iot;
case "Windows.Team":
return DeviceFormFactorType.SurfaceHub;
default:
return DeviceFormFactorType.other;
}
}
public enum DeviceFormFactorType
{
Phone,
Desktop,
Tablet,
Iot,
SurfaceHub,
other
}
对于桌面,我可以设置一个大于 500x500 的最小尺寸,如下代码所示。
private void Page_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (e.NewSize.Width < 800 || e.NewSize.Height < 600)
{
ApplicationView.GetForCurrentView().TryResizeView(new Size(800, 600));
}
}