2010-04-29 14 views
19

मेरे पास एक सूची दृश्य है जिसमें मैंने एक कस्टम सेल को उपयोगकर्ता नियंत्रण के रूप में परिभाषित किया है।एक WPF विंडो का स्थान कैसे सेट करें?

कस्टम सेल में मैंने उपयोगकर्ता हाइपरलिंक दिया, जब मैं हाइपरलिंक पर क्लिक करता हूं तो मैं एक WPF संवाद दिखा रहा हूं।

मैं WPF संवाद चाहते हैं तो बस हाइपरलिंक ऊपर आता है ..

कृपया मुझे पता है कि मैं यह कैसे प्राप्त या कैसे संवाद का स्थान निर्धारित करने के लिए इतना है कि यह सिर्फ हाइपरलिंक ऊपर आता है सकते हैं।

उत्तर

54

Window.Left और Window.Top

var location = myTextBlock.PointToScreen(new Point(0,0)); 
window.Left = location.X; 
window.Top = location.Y-window.Height; 
+0

जोश .. कैसे प्राप्त करने के लिए की .Left निर्धारित करते हैं TextBlock (हाइपरलिंक अंदर समाहित) मैं "प्रेषक" घटना तर्क के माध्यम से हाइपरलिंक प्राप्त कर सकते हैं .. –

+0

मैं नीचे के रूप में हाइपरलिंक को परिभाषित किया है: <हाइपरलिंक एक्स: नाम = "condOpt" क्लिक करें = "condOpt_Click" >

3

आप जैसा कि यहाँ दिखाया हाइपरलिंक के निर्देशांक प्राप्त करने के विंडो की स्थिति निर्धारित करने की आवश्यकता होगी: रिश्तेदार/पूर्ण पदों प्राप्त करने के लिए

http://blog.fossmo.net/post/How-to-set-the-windows-position-in-WPF.aspx

तत्वों के कुछ सुझावों के लिए यहां एक नज़र डालें:

http://ivolo.mit.edu/post/WPF-Mouse-and-Point-Acrobatics.aspx

10

आप WindowStartupLocationManual को (जो डिफ़ॉल्ट तथापि है) और साथ ही Top और Left संपत्ति मूल्यों की स्थापना सेट करना होगा।

CenterScreen सेट करने से स्क्रीन के केंद्र में माउस कर्सर को स्थानांतरित करने का कारण बनता है।

विंडोस्टार्टअप स्थान को CenterOwner पर सेट करने से विंडो को मालिक के विंडो (मालिक देखें) के केंद्र में स्थित होने का कारण बनता है। मालिक विंडो या तो एक और WPF विंडो या एक गैर-WPF विंडो हो सकती है।

Source

-1

आप तो अधिक पर नजर रखने के आकार खिड़की (मुझे के लिए 2000 में काम करता है) खिड़की दूसरे मॉनीटर पर चला जाता है और फिर आप "अधिकतम" कर सकते हैं

+0

आपको लगता है कि कैसे सेट करूँ? –

+0

चीजें आपके विकास मशीन पर काम करने के लिए हार्ड कोडिंग मान वास्तव में खराब अभ्यास है। – Danny

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