12

का स्क्रीन रेज़ोल्यूशन कैसे प्राप्त कर सकता हूं मैं डिवाइस से डिवाइस (विंडोज फोन) से स्क्रीन रिज़ॉल्यूशन कैसे प्राप्त कर सकता हूं?मैं डिवाइस (विंडोज फोन)

+2

संभव डुप्लिकेट [विंडोज फोन 7 सीरीज पर स्क्रीन आकार पाने के लिए कैसे?] (Http://stackoverflow.com/questions/2596732/how-to-get-screen-size-on-windows-phone -7-श्रृंखला) – katrielalex

+0

इसके लिए आपको क्या चाहिए? संकल्प वही है। –

+1

अब यह है, लेकिन अगले सिस्टम अपडेट के बाद और अधिक संभावित संकल्प होंगे, इसलिए यह इस तरह के प्रश्नों का एक अच्छा कारण हो सकता है। – MarcinJuraszek

उत्तर

21
public void GetScreenResolution() 
{ 
    string ScreenWidth = Application.Current.Host.Content.ActualWidth.ToString(); 
    string ScreenHeight = Application.Current.Host.Content.ActualHeight.ToString(); 
    MessageBox.Show(ScreenWidth + "*" + ScreenHeight); 
} 
+1

यह निश्चित रूप से काम करता है (इसे मेरे डिवाइसइन्फो ऐप के लिए भी वही कर रहा है) लेकिन यह न भूलें कि यदि एसडीके 7.1 (7.x डिवाइस का समर्थन करने के लिए) का उपयोग करना है तो इसका परिणाम WP8 पर चलने पर गलत मान होंगे। – hfrmobile

+0

WP8.1 के साथ मेरे लुमिया 925 पर, यह 480x800 लौटाता है, जबकि चश्मे की साइटें वहां दावा करती हैं कि संकल्प 768x1280 है। यहाँ कुछ बंद है। –

6

यह जानने का एक बेहतर तरीका हो सकता है कि आपका ऐप किस स्क्रीन रिज़ॉल्यूशन पर चल रहा है।

if(App.Current.Host.Content.ScaleFactor == 100) 
{ 
    // WVGA 
} 
else if (App.Current.Host.Content.ScaleFactor == 160) 
{ 
    // WXGA 
} 
else if (App.Current.Host.Content.ScaleFactor == 150) 
{ 
    // 720p 
} 

स्रोत http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206974%28v=vs.105%29.aspx

+0

मैं इसे आज़मा दूंगा! – hfrmobile

+2

और क्या होगा अगर एमएस फुलएचडी के लिए एक और स्केलफैक्टर जोड़ता है उदाहरण के लिए? हार्डकोड – Grigory

+2

के लिए डाउनवोट यह सीधे ऊपर सूचीबद्ध माइक्रोसॉफ्ट वेबसाइट से है। बेशक, यदि नए संकल्प/स्केल कारक जोड़े जाते हैं, तो आप ऊपर दिए गए कोड में एक और सशर्त जोड़ते हैं। क्या आपको लगता है कि चारों ओर एक रास्ता है? किसी भी कारण से मत मत करो। –

1

समाधान WP7.x और WP8 उपकरणों पर काम करेंगे कि: http://sviluppomobile.blogspot.co.at/2013/04/detect-screen-resolution-for-windows.html

+0

धन्यवाद के लिए देखना चाहता हूं, बहुत मदद करता है! –

+0

ठीक लगता है, लेकिन, जैसा कि http://stackoverflow.com/a/14018398/1130789 में वर्णित है, माइक्रोसॉफ्ट एक और डिस्प्ले रेज़ोल्यूशन जोड़ता है तो यह असफल हो जाएगा! खासकर जब कोई स्केल कारक मेल नहीं खाता है तो कोई अपवाद हैंडलिंग नहीं है। तो कम से कम अपनी स्विच स्थिति में एक डिफ़ॉल्ट खंड जोड़ें। – S0me0ne

1

यह वास्तव में @Dmitriy Reznik का एक संयोजन और @Paras Wadehra के जवाब के रूप में सामने आ रहा आयाम की आवश्यकता है Host.Contentअसुरक्षित आयाम हैं।

var content = App.Current.Host.Content; 

var screenResolution = new Size(
    content.ActualWidth*content.ScaleFactor/100, 
    content.ActualHeight*content.ScaleFactor/100); 
की
+0

डिस्प्ले स्केल को जानने का एक और तरीका है: 'डिस्प्लेप्रॉपर्टीज। लॉजिकल डीपीआई/96.0 एफ' – Igor

संबंधित मुद्दे