मानक WinForms 2.0 PropertyGrid
control होने के बाद मैं नियंत्रण के सीमा रंग को बदलने या पूरी तरह से सीमा को हटाने का एक तरीका ढूंढ रहा हूं।एक संपत्ति ग्रिड नियंत्रण के सीमा रंग (या सीमा को हटाएं) को कैसे बदलें?
मैं LineColor
property जो दुर्भाग्य से केवल कोशिकाओं के बीच आंतरिक बॉर्डर में परिवर्तन के बारे में पता कर रहा हूँ।
साथ ही, मैं ILSpy इस्तेमाल किया PropertyGrid
नियंत्रण के स्रोत कोड पर एक नज़र लेने के लिए और अभी भी मेरे लिए सार्थक कुछ नहीं मिला।
मेरा प्रश्न है:
कैसे एक PropertyGrid
नियंत्रण की बाहरी सीमा हटाने या बाहरी सीमा का रंग बदलने के लिए?
अद्यतन 2012-05-04 - समाधान (उर्फ "हैक"):
विचार करने के लिए है:
Jamie's answer के आधार पर मैं एक काम कर समाधान (which you can download from here) इकट्ठे एक पैनल के अंदर संपत्ति ग्रिड रखें और पैनल को नियंत्रण क्लिप करने दें।
इस दृष्टिकोण के साथ, मैं जगह "1" (या आप सीमाओं होना चाहते हैं जो कुछ भी) एक और पैनल के एक Padding
है कि में कतरन पैनल किया था और इस पैनल के एक BackColor
कि सीमा रंग रूप में कार्य करता है (हरी दे दी है मेरा उदाहरण)।
संपत्ति ग्रिड के लिए "वाम, ठीक है, ऊपर, नीचे", कतरन पैनल को "पूर्ण" के Dock
सेट की एंकर सेट करें।
यह मेरी आवश्यकताओं के लिए अच्छी तरह से काम करता है। मैं इसे एक हैक के रूप में देखता हूं क्योंकि यह दो पैनलों के संसाधनों का उपभोग करता है, जिन्हें मैं उम्मीद करता था कि मैं बचा सकता हूं।
हेहे, मैंने पहले से ही कोशिश की है कि अतीत में, असफल। मैं इसे फिर से कोशिश करूंगा, बस अगर मैंने कुछ गलत किया है। –
@ जैमी यह काम किया, आपके सुझाव के लिए धन्यवाद! मैं आपके प्रश्न के साथ अपना प्रश्न अपडेट करूंगा। –
सावधान रहें, स्वचालित रूप से स्केलिंग के कारण विंडोज़ का आकार बदलते समय यह बाइट कर सकता है। आप वास्तव में यह सुनिश्चित करने के लिए पैनल के आकार बदलने वाले ईवेंट हैंडलर में कोड लिखना चाहते हैं कि यह संपत्तिग्रिड है जहां यह होना चाहिए। –