Windows phone 8 如何获取windows phone 8设备的屏幕大小?

Windows phone 8 如何获取windows phone 8设备的屏幕大小?,windows-phone-8,windows-phone,gdr,Windows Phone 8,Windows Phone,Gdr,我正在搜索如何获得windows phone 8设备的实际屏幕大小,我找到了此方法,但它仅适用于具有GDR3更新的设备:已更新:我找到了此方法 private void getScreenInfo() { double dpix = -1.01; double screensize = -1.01; double dpiy = -1.01; Size res; try { dpix = (double)DeviceExtendedProp

我正在搜索如何获得windows phone 8设备的实际屏幕大小,我找到了此方法,但它仅适用于具有GDR3更新的设备:

已更新:我找到了此方法

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;

在我的Windows phone 8s上,它们返回480x800,这是正确的屏幕大小

请注意,返回的值是相对于纵向模式的,如果使用横向模式,则必须将其反转

Application.Current.Host.Content.ActualHeight;