2011-03-22 5 views
6

पर एक टिप्पणी जोड़ने के लिए एक एक्सटेंशन बनाएं, मैं एक एक्सटेंशन विकसित करने की कोशिश कर रहा हूं जो वीएस 2010 में टिप्पणी टूलबार बटन के समान काम करेगा ... लेकिन मैं टिप्पणी के रूप में सभी पाठ को चिह्नित करना चाहते हैं और इसके ऊपर एक टिप्पणी डालना चाहते हैं। एक उदाहरण है। मैं इसे सरल जानता हूं, लेकिन यह बहुत आसान है .. मेरा विचार है कि अब कोड का उपयोग करने के लिए कई अतिरिक्त टूलबार बटन नहीं हैं, कोड को चिह्नित करें जिसमें बग है ... और इस तरह की चीजें ... और इसे उठाया जा सकता है टास्क विंडो में, क्योंकि यह कार्यसूची के साथ शुरू होतावीएस 2010 एक्सटेंसिबिलिटी: टिप्पणी में चयनित टेक्स्ट (कोड) को स्वचालित रूप से लपेटने और

 // TODO MARTIN CODE NO LONGER USED 
     /*if (myItem) 
     { 
      txtTest.Enabled = false; 
      txtTest1.Value = 0; 
      btnOk.Enabled = false; 
     }*/ 

मुझे लगता है मैं फिर से मैं क्या चाहिए कोड को लिखने के लिए DTE.ActiveDocument

और

 (((TextDocument)myDoc).Selection.Text). 

तब उपयोग करने की आवश्यकता करने के लिए?

किसी भी मदद की वास्तव में सराहना की।

उत्तर

4

यह आपके प्रश्न का बिल्कुल जवाब नहीं है, लेकिन यह एक और विकल्प है जिसे आप विचार कर सकते हैं। आप मैक्रो को परिभाषित कर सकते हैं जो आपको आवश्यक प्रत्येक ऑपरेशन करता है, फिर उन्हें टूलबार बटन पर असाइन करें। एक उदाहरण मैक्रो होगा:

Sub TODOComment() 
    DTE.ExecuteCommand("Edit.CommentSelection") 
    DTE.ActiveDocument.Selection.LineUp() 
    DTE.ActiveDocument.Selection.EndOfLine() 
    DTE.ActiveDocument.Selection.NewLine() 
    DTE.ActiveDocument.Selection.Text = "// TODO " 
End Sub 

इस में टिप्पणी बाहर अनुभाग कार्यक्षमता बनाया का उपयोग करता है, तो चयन से पहले लाइन अप करने के लिए चला जाता है, पंक्ति के अंत में एक वापसी सम्मिलित करता है और एक 'यह करें' टिप्पणी कहते हैं। तो स्पष्ट कमियां हैं (फ़ाइल के शीर्ष पर इसे न चलाएं), लेकिन यह आपके द्वारा किए जाने वाले कम या ज्यादा काम करेगा। असुविधा अनिवार्य रूप से वही होगी (सब कुछ अपूर्ण, फिर शीर्ष पंक्ति को हटाएं)।

मुझे स्वचालन इंजन अच्छी तरह से नहीं पता है, तो मैं क्या करना चाहता हूं अगर मैं यह जानना चाहता हूं कि इस तरह की चीज कैसे करें, अस्थायी मैक्रो रिकॉर्ड करें, उन गतिविधियों को निष्पादित करें जिनमें मुझे रूचि है, फिर ट्विक करें मेरे बाद के परिणाम प्राप्त करने के लिए आउटपुट। यह हमेशा स्पष्ट दस्तावेज के माध्यम से शिकार करने में काफी समय बचाता है।

0

बस जो कुछ भी आप चाहते हैं उसे करने के लिए एक अस्थायी मैक्रो रिकॉर्ड करें, और इसे आवश्यकतानुसार समायोजित करने के लिए अपने मैक्रो में पेस्ट करें। इस मामले में, मुझे लगता है कि यह है कि आप क्या करना चाहते थे है:

DTE.ExecuteCommand("Edit.CommentSelection") 
    DTE.ActiveDocument.Selection.LineUp() 
    DTE.ActiveDocument.Selection.NewLine() 
    DTE.ActiveDocument.Selection.Text = "// TODO Whatever" 
संबंधित मुद्दे