2009-11-10 11 views
7

में बहु-पंक्ति स्ट्रिंग गुणों को अनुमति दें मुझे टेक्स्टबॉक्स के टेक्स्ट को सेट करने के लिए एक स्ट्रिंग प्रॉपर्टी के साथ एक विंडोज फॉर्म उपयोगकर्ता नियंत्रण मिला है। यह स्ट्रिंग बहु-पंक्ति हो सकती है।गुण विंडो

मैंने देखा है कि एक टेक्स्ट प्रॉपर्टी के साथ कुछ नियंत्रणों पर, और सिंगल लाइन प्रॉपर्टी टेक्स्टबॉक्स में टाइप करने के लिए मजबूर होने की बजाय, आपको थोड़ा पॉप अप मिलता है जहां आप कई लाइन टाइप कर सकते हैं। (वास्तव में, एक विंडोज फॉर्म टेक्स्टबॉक्स नियंत्रण टेक्स्ट प्रॉपर्टी पर इसकी अनुमति देता है।)

मैं इस प्रॉपर्टी को प्रॉपर्टी विंडो में डिज़ाइन की गई कार्यक्षमता के लिए कैसे सक्षम करूं?

[EditorAttribute(typeof(MultilineStringEditor), 
       typeof(System.Drawing.Design.UITypeEditor))] 
public string Instructions 
{ 
    get 
    { 
     return TextBox1.Text; 
    } 
    set 
    { 
     TextBox1.Text = value; 
    } 
} 

:

निम्नलिखित मेरे एप्लिकेशन में नहीं वास्तविक कोड है, लेकिन कैसे इस तरह के एक संपत्ति परिभाषित किया जा सकता

public string Instructions 
{ 
    get 
    { 
     return TextBox1.Text; 
    } 
    set 
    { 
     TextBox1.Text = value; 
    } 
} 

उत्तर

14

का एक उदाहरण आप एक MultilineStringEditor साथ EditorAttribute का उपयोग कर सकते है सिस्टम के संदर्भ को जोड़ने से बचने के लिए। डिज़ाइन करें और इस प्रकार पूर्ण ढांचे की आवश्यकता है, आप इस तरह की विशेषता भी लिख सकते हैं:

[EditorAttribute(
    "System.ComponentModel.Design.MultilineStringEditor, System.Design", 
    "System.Drawing.Design.UITypeEditor")] 

हालांकि यह अब एक समस्या से कम है कि उन्होंने फ्रेमवर्क को क्लाइंट प्रोफाइल और एक पूर्ण में विभाजित करना बंद कर दिया है।

+1

क्षमा करें, मुझे कुछ संदर्भ याद आना चाहिए। मुझे MiltilineStringEditor को मेरे इंटेलिजेंस में एक विकल्प के रूप में नहीं मिल रहा है। यहां तक ​​कि जब मैं System.ComponentModel.Design.MultilineStringEditor का उपयोग करता हूं। और यह संकलित नहीं होगा। अगर मैं यह काम करने के लिए मिल ca, मैं आप क्रेडिट सही जवाब के लिए, हालांकि दे देंगे ... – David

+1

आप संदर्भ के लिए 'System.Design.dll' – manji

+1

बिल्कुल सही है। मैंने पाया कि खुद से बाहर और एक टिप्पणी के रूप में पोस्ट करने के लिए बस वापस आ रहा था। धन्यवाद। मैं इसे एक दिन या उससे भी ज्यादा खुला रखने जा रहा हूं ताकि उम्मीद है कि आपको अपने उत्तर के उत्तर में कुछ वोट मिलेगा। यह ज्ञान का एक सुंदर अस्पष्ट टुकड़ा था, और मुझे लगता है कि आपको पुरस्कृत किया जाना चाहिए। – David