2011-02-14 13 views
32

मान लें कि मेरे पास नियंत्रण है और इसका स्थान इसके माता-पिता के सापेक्ष है। यदि यह कई बार एम्बेडेड है और मुख्य रूप का महान महान पोता है, तो मैं कैसे निर्धारित कर सकता हूं कि मेरी पूरी स्क्रीन पर उसका स्थान क्या है, न केवल तत्काल माता-पिता में इसका स्थान? यह एक स्क्रीनशॉट के माध्यम से एक विशेष नियंत्रण मुद्रित करने के उद्देश्य से है (क्योंकि कुछ नियंत्रणों के लिए DrawToBitmap ठीक से काम नहीं करता है)।संपूर्ण स्क्रीन पर नियंत्रण से संबंधित स्थान प्राप्त करना?

उत्तर

80

आप PointToScreen method लिए देख रहे हैं:

Point location = someControl.PointToScreen(Point.Empty); 
+2

ध्यान दें कि PointToScreen _client area_ निर्देशांक लगता है, इसलिए उदाहरण के लिए एक प्रपत्र पर इस कोड का उपयोग सही परिणाम नहीं देंगे। – rymdsmurf

+3

@rymdsmurf यह सुनिश्चित नहीं है कि मैं आपको सही तरीके से समझता हूं, लेकिन यदि आप इसे 'फॉर्म' (जैसे 'myForm.PointToScreen') पर उपयोग करते हैं और आपके पास सही निर्देशांक हैं ('control.Location' से) यह आपको सही निर्देशांक देगा स्क्रीन पर। – Artholl

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

  • कोई संबंधित समस्या नहीं^_^