Как получить размер экрана устройства Windows Phone 8?
Я искал, как я могу получить фактический размер экрана устройства Windows Phone 8, я нашел этот метод, но он работает только с устройствами с обновлением GDR3
2 ответа
Решение
ОБНОВЛЕНО: я нашел этот метод
private void getScreenInfo()
{
double dpix = -1.01;
double screensize = -1.01;
double dpiy = -1.01;
Size res;
try {
dpix = (double)DeviceExtendedProperties.GetValue("RawDpiX");
dpiy = (double)DeviceExtendedProperties.GetValue("RawDpiY");
res = (Size)DeviceExtendedProperties.GetValue("PhysicalScreenResolution");
screensize = Math.Sqrt(Math.Pow(res.Width / dpix, 2) + Math.Pow(res.Height / dpiy, 2));
}
catch (Exception e) {
}
}
Вы можете найти размер экрана с помощью
Application.Current.Host.Content.ActualWidth;
а также
Application.Current.Host.Content.ActualHeight;
На моем Windows Phone 8s они возвращают 480x800, который является правильным размером экрана.
Обратите внимание, что возвращаемые значения относятся к портретному режиму, если вы используете альбомную ориентацию, вам придется инвертировать их.