2010-04-09 22 views

उत्तर

10

हां, एक फॉर्म किसी अन्य वर्ग की तरह है। आपको डिज़ाइनर-जेनरेट कोड को थोड़ा सा संशोधित करना होगा, और देखें कि वह वापस लुढ़का नहीं है।

// TestForm.cs 
    public partial class TestForm<T> : Form 

// TestForm.Designer.cs 
partial class TestForm<T> 
+6

ध्यान दें कि जेनरेट फॉर्म फॉर्म डिज़ाइनर में प्रदर्शित नहीं किए जा सकते हैं, हालांकि उनके डिस्केन्डेंट कर सकते हैं। – wRAR

+0

@wrar, मैं वीएस -2010 के साथ परीक्षण कर रहा था और इसमें मेरे टेस्टफॉर्म के साथ कोई (स्पष्ट) समस्या नहीं है। लेकिन मुझे उम्मीद है कि यह थोड़ा कमजोर होगा। –

+0

मैं इसे जांचने की प्रक्रिया में हूं और आपको यह बताएगा कि यह कैसे काम करता है। – Nathan

4

के रूप में सुझाव दिया, यह किया जा सकता है - लेकिन कई मामलों में आप अपने आप को ढांचे लड़ आदि IMO यह आसान हो बस के रूप में एक Type पारित करने के लिए (एक संपत्ति के रूप में, शायद) हो सकता है मिल जाएगा, और object संपत्ति के माध्यम से उदाहरण (या यदि ऐसा लागू होता है तो एक इंटरफ़ेस/बेस-क्लास)।

आप जेनिक्स का उपयोग कर सकते हैं, लेकिन इस परिदृश्य में कई मामलों में यह वास्तव में आपको बहुत मदद नहीं करेगा, और डिजाइनर इससे नफरत करता है।

+2

मार्क, वीएस -2010 डिजाइनर को जेनेरिक फॉर्म के साथ कोई समस्या नहीं प्रतीत होती है। यह फॉर्म-विरासत के साथ पूरी तरह विफल रहता है। –

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