Igor Kulman
Igor Kulman

Reputation: 16369

Get device screen resolution in Windows Phone 8.1 XAML

In Windows Phone 8 I can get the screen resolution using DeviceExtendedProperties or Application.Current.Host.Content.ScaleFactor. None of this works in Windows Phone 8.1 XAML.

I could not find a way how to get the screen resolution in Windows Phone 8.1 XAML, is there a way?

Upvotes: 20

Views: 17639

Answers (2)

Kevin Gosse
Kevin Gosse

Reputation: 39037

When using the WinRT API, you can retrieve the screen resolution with Windows.UI.Xaml.Window.Current.Bounds (Height and Width).

You need to multiply those values by the scale factor to get the real resolution. You can retrieve the scale factor by calling DisplayInformation.GetForCurrentView().RawPixelsPerViewPixel

var scaleFactor = DisplayInformation.GetForCurrentView().RawPixelsPerViewPixel;

Debug.WriteLine("The current resolution is {0}x{1}", Window.Current.Bounds.Width * scaleFactor, Window.Current.Bounds.Height * scaleFactor);

Upvotes: 31

yasen
yasen

Reputation: 3580

You can get everything you need about the resolution using Window and DisplayInformation

var bounds = Window.Current.Bounds;
var displayInfo = DisplayInformation.GetForCurrentView();

Upvotes: 10

Related Questions