在使用Visual Studio 2019编写的以下版本的App.xaml.cs中,与我的Windows C#UWP解决方案/项目Example_Application相关联,类App的构造函数成功调整了启动应用程序时出现的蓝色应用程序窗口的大小。我的问题:假设分辨率等级为1,只是为了使事情变得简单,如何将1920和1080更改为组成Windows-10显示分辨率的两个数字?
namespace Example_Application
{
sealed partial class App : Windows.UI.Xaml.Application
{
public App()
{
Windows.UI.ViewManagement.ApplicationView.PreferredLaunchViewSize = new Windows.Foundation.Size(1920, 1080);
Windows.UI.ViewManagement.ApplicationView.PreferredLaunchWindowingMode = Windows.UI.ViewManagement.ApplicationViewWindowingMode.PreferredLaunchViewSize;
}
protected override void OnLaunched(Windows.ApplicationModel.Activation.LaunchActivatedEventArgs e)
{
Windows.UI.Xaml.Controls.Frame rootFrame = new Windows.UI.Xaml.Controls.Frame();
Windows.UI.Xaml.Window.Current.Content = rootFrame;
rootFrame.Navigate(typeof(MainPage), e.Arguments);
Windows.UI.Xaml.Window.Current.Activate();
}
}
}
我尝试过的事情:
Windows.Foundation.Rect visibleBounds = Windows.UI.ViewManagement.ApplicationView.GetForCurrentView().VisibleBounds;
,并且bounds的Width和Height属性返回当前应用程序的宽度和高度,而不是Windows-10的显示分辨率。uint screenWidthInRawPixels = Windows.Graphics.Display.DisplayInformation.GetForCurrentView().ScreenWidthInRawPixels;
,而screenWidthInRawPixels是当前应用程序的宽度,而不是Windows-10的显示宽度。要获得UWP应用中的屏幕分辨率,您可以尝试使用DisplayInformation.ScreenHeightInRawPixels Property和DisplayInformation.ScreenWidthInRawPixels Property。
类似于下面的代码:
//screen resolution
var height = DisplayInformation.GetForCurrentView().ScreenHeightInRawPixels.ToString();
var width = DisplayInformation.GetForCurrentView().ScreenWidthInRawPixels.ToString();
我的分辨率是1920 * 1080。在我的测试中,它可以正确获得1920 * 1080的屏幕分辨率。