मैं बार-बार नियंत्रण क्षेत्र पर कुछ ग्राफिक्स खींच रहा हूं, और हर बार जब मैं एक पारदर्शी पृष्ठभूमि के साथ ताजा शुरू करना चाहता हूं। तो मैं उपयोग करता हूं:सी # ग्राफिक्स। क्लीयर (रंग। ट्रांसपेरेंट) ठीक से काम नहीं कर रहा है?
Graphics graph = control.CreateGraphics();
graph.Clear(Color.Transparent);
हालांकि, ग्राफिक्स क्षेत्र पारदर्शी के बजाय काला हो जाता है। कोई विचार?
साफ़ रंग जैसे ग्राफिक्स फ़ंक्शंस अनिवार्य रूप से नो-ऑप्स होते हैं जब 'रंग। ट्रांसपेरेंट' के साथ उपयोग किया जाता है। 'ग्राफिक्स। क्लेयर (रंग। ट्रांसपेरेंट)' का मतलब यह नहीं है कि "ऐसा करें कि मेरी पूरी ग्राफिक्स स्पेस पारदर्शी है"। इसके बजाय, इसका मतलब है, "मेरे वर्तमान स्थान पर रंग 'पारदर्शी' चित्रित करके मेरी पूरी ग्राफिक्स स्पेस को साफ़ करें"। –
यह निदान करने के लिए कि यह काला क्यों जा रहा है, हमें अधिक जानकारी की आवश्यकता हो सकती है। क्या यह पेंट इवेंट हैंडलर में कस्टम नियंत्रण में है? क्या आप कोई कंट्रोल स्टाइल सेट कर रहे हैं? –
और अपने ऑन-ऑन 'ऑनपेंट' ओवरराइड में दर्द करें ... 'CreateGraphics' से बचें ... यह बुरा है। – DonBoitnott