2010-06-09 17 views
6

मेरे पास विंडोज़ फॉर्म हैं जिनमें कई रूपों और नियंत्रण हैं। मैं चाहता हूं कि उपयोगकर्ता ने मेरे आवेदन के किसी भी रूप के किसी भी नियंत्रण में कुछ टेक्स्ट चुना है और टूलबार ऑपरेशन पर कट/कॉपी/पेस्ट बटन पर क्लिक करें तदनुसार प्रदर्शन करें।विंडोज़ फॉर्म एप्लिकेशन 'कट कॉपी पेस्ट कार्यक्षमता

im प्रतिलिपि बटन पर क्लिक करें पर सी # .net के sendkeys.send ("^ ग"), लेकिन यह काम नहीं करता का उपयोग कर ... अगर वहाँ किसी भी तरह से चयनित पाठ करने के लिए है

या किसी 1 बता सकते हैं (जानने के बावजूद, मेरे आवेदन का कौन सा रूप/नियंत्रण)।

अग्रिम धन्यवाद ...

+1

अनुपयोगी जवाब: http://stackoverflow.com/questions/2881259/editing-many-richtextboxes-and-textboxes –

उत्तर

2

मैं विधि प्रति घटना से निपटने में इस का उपयोग करें:

if (this.ActiveControl is TextBox) 
{ 
     Clipboard.SetDataObject(((TextBox)this.ActiveControl).SelectedText, true); 
} 
if (this.ActiveControl is RichTextBox) 
{ 
     Clipboard.SetDataObject(((RichTextBox)this.ActiveControl).SelectedText, true); 
} 
if (this.ActiveControl is ComboBox) 
{ 
     Clipboard.SetDataObject(((ComboBox)this.ActiveControl).SelectedText, true); 
} 

के लिए पेस्ट, कुछ इस तरह:

nCursorPosition = ((RichTextBox)this.ActiveControl).SelectionStart; 
this.ActiveControl.Text = this.ActiveControl.Text.Insert(nCursorPosition, Clipboard.GetText()); 
+1

के टेक्स्ट का चयन किया है, मेरे पास कई फॉर्म के साथ एमडीआई एप्लीकेशन है, प्रत्येक फॉर्म में एकाधिक टेक्स्टबॉक्स हो सकते हैं जब उपयोगकर्ता किसी भी फॉर्म में कुछ टेक्स्ट चुनता है और एप्लिकेशन के मुख्य मेनू में प्रेस कॉपी बटन दबाएं, मैं चाहता हूं कि चयनित टेक्स्ट कॉपी हो –

5

आप क्लिपबोर्ड के बारे में अधिक के लिए कॉपी और इस लेख की तुलना में इस

जांच करने के लिए उपयोग क्लिपबोर्ड नहीं तो आप डेटा को चिपकाने के लिए क्लिपबोर्ड इस्तेमाल किया है: http://www.geekpedia.com/tutorial188_Clipboard-Copy-and-Paste-with-Csharp.html

+1

आपके उत्तर के लिए धन्यवाद। मैंने लिंक की जांच की। उस स्थिति में प्रोग्रामर जानता है कि कौन सा टेक्स्टबॉक्स चुना गया है। मुझे सामान्य समाधान चाहिए। मान लीजिए मेरे पास हजारों पंक्तियों और स्तंभों के साथ डेटा ग्रिड है। अब मुझे नहीं पता कि कौन से सेल्स टेक्स्ट उपयोगकर्ता चुने गए हैं। मेरे पास सौदा करने के लिए कई रूप हैं। क्योंकि उपयोगकर्ता एक ही समय में कई रूपों को खोल सकता है। इसलिए मैं प्रत्येक नियंत्रण और रूप के लिए ऐसी तकनीक को लागू नहीं करना चाहता हूं। बस सामान्य तरीके की तलाश में है। –

+1

यह जांचने से आपकी मदद कर सकता है: http://www.voidspace.org.uk/ironpython/winforms/part8.shtml –

1

करने के लिए अपने दूसरा प्रश्न:

वर्तमान में केंद्रित नियंत्रण खोजने के लिए आप इस समाधान What is the preferred way to find focused control in WinForms app? का उपयोग कर सकते हैं।

फिर से जांच करें, चयन को पढ़ने के लिए है कि किस प्रकार (यानी अगर यह TextBox उपयोग SelectedText -Propery http://msdn.microsoft.com/en-us/library/system.windows.controls.textbox.selectedtext.aspx है)

+1

यह मेरे लिए काम नहीं करता है। क्योंकि मेरे पास एमडीआई एप्लीकेशन है। सक्रिय नियंत्रण प्राप्त करके मुझे टूलबार का क्लिक बटन मिलता है, बल्कि टेक्स्टबॉक्स जहां मैंने किसी अन्य फॉर्म (एमडीआई बच्चे) –

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