2015-11-01 8 views
16

सी # या वीबी.Net में, विजुअल स्टूडियो 2013 एसडीके का उपयोग करके, जब मैं किसी सदस्य की जानकारी दिखाया जाता है तो मैं इंटेलिसेंस पर अतिरिक्त तत्व कैसे जोड़ सकता हूं?विजुअल स्टूडियो एसडीके का उपयोग करके इंटेलिजेंस प्रदान करने वाली जानकारी का विस्तार कैसे करें?

मेरा इरादा पूरा करने/सुझाव तत्व जोड़ने के लिए नहीं है, मैं उस सदस्य के लिए दिखाए गए जानकारी के नीचे कस्टम अतिरिक्त जानकारी जोड़ना चाहता हूं जो किसी विधि, फ़ंक्शन या प्रॉपर्टी (गेटटर/सेटर) जैसे अपवाद को फेंक सकता है। एक कीवर्ड नहीं।

मैंने Microsoft.VisualStudio.Language.Intellisense नामस्थान के सदस्यों को थोड़ा सा पढ़ा लेकिन मैंने इसके बारे में कोई स्पष्ट विचार नहीं लिया।

enter image description here

मैं:

मेरा लक्ष्य, मदद से मैं यहाँ मिल सकता है, एक सरल विस्तार है कि (दस्तावेज) जोड़ देगा सदस्यों के लिए अपवाद जानकारी, कुछ इस तरह विकसित करने के लिए जवाब खोजने के लिए है सी # के लिए विजुअल स्टूडियो में इस उपयोगी फीचर को वापस लाने के लिए आश्चर्यचकित करें, और इसे VB.Net के लिए भी जोड़ें, फिर सफल होने पर मैं इसे अपने सभी के साथ मुफ्त में साझा करूंगा जैसा मैंने पहले किया था, इस उपयोगी विस्तार के साथ:

बस मैं टिप्पणी करता हूं क्योंकि इस तरह से हम सभी के लिए किसी भी मदद को पुरस्कृत किया जा सकता है!


साथ ही मेरे सवाल का

, और केवल इसके अतिरिक्त, किसी ने मुझे कैसे बाहर जिस तरह से सदस्यों की Xml प्रलेखन (<exception cref="Exception name">) यह करने के लिए, या हो सकता है एक आसान तरीका पुनः प्राप्त करने की कल्पना करने के बारे में मार्गदर्शक शुरू कर सकता है अगर, मैं आपका बहुत आभारी रहूंगा।

संपादित:

बारे Xml प्रलेखन, मैं विचार सदस्य है कि बजाय प्रतिबिंब के साथ खिलवाड़ की Intellisense द्वारा सूचीबद्ध किया जाएगा के अपवाद निरीक्षण करने के लिए दृश्य स्टूडियो वस्तु ब्राउज़र उपयोग करने के लिए मिल सकता है? अपवाद जानकारी प्राप्त करने के लिए। एसडीके से ऑब्जेक्ट ब्राउजर को स्वचालित करने के तरीके को समझने के बाद यह एक बेहतर और व्यवहार्य तरीका हो सकता है, लेकिन मैं बस इस पर टिप्पणी कर रहा हूं, शायद यह सवाल हल हो जाने के बाद यह एक नया प्रश्न होगा, क्योंकि पहली बार मैं इस कदम को हल करने की जरूरत है, मुझे उम्मीद है।

+1

यह प्रश्न आपके [पिछले प्रश्न] (http://stackoverflow.com/questions/33460002) से अलग कैसे है? –

+2

@ Bjørn-Roger Kringsjå टिप्पणी के लिए धन्यवाद। उस प्रश्न में मैंने आईडीई (इस तरह के एक छिपे हुए विकल्प या कमांड), या मौजूदा तृतीय पक्ष एक्सटेंशन से सुविधा को सक्षम करने के लिए निर्देशित तरीके के अस्तित्व के लिए कहा। यह प्रश्न अलग है, यह प्रोग्रामिंग-भाषा विशिष्ट है जो उस सुविधा को जोड़ने के लिए स्क्रैच से एक्सटेंशन विकसित करने की कोशिश करना शुरू कर देता है। – ElektroStudios

+0

व्यक्तिगत रूप से, मैं इंटेलिसेंस में पूर्ण, वर्बोज़ दस्तावेज़ नहीं चाहता। जब आप एक विधि नाम टाइप कर रहे हैं तो तर्क और वापसी उचित होती है। टिप्पणी और/या अपवाद देखने के लिए ऑब्जेक्ट ब्राउज़र में चीजों को देखना बहुत अलग कदम है (मेरे लिए)। – Plutonix

उत्तर

7

वहाँ IntelliSence तानाना अंक के कुछ प्रकार है कि आप निम्नलिखित मामलों में से प्रत्येक के लिए उपयोग करने की आवश्यकता हैं:

  • उपकरण की नोक से पता चला जब पाठ तत्वQuickInfo उपकरण कहा जाता है मँडरा -टिप, और IQuickInfoSource इंटरफ़ेस से विरासत के माध्यम से स्वयं को कार्यान्वित किया जा सकता है और IIntellisenseController मिलान कर रहा है।एक पूर्ण माध्यम से गुजरने के on MSDN पाया जा सकता है:

    • उदाहरण

      :

      QuickInfo Tool-Tip

    • बनाने के लिए सुनिश्चित करें कि आपके IQuickInfoSourceProvider लोड आपके उपयोग करके Visual-Studio एक IQuickInfoSourceसे पहले डिफ़ॉल्ट Order attribute - अन्यथा डिफ़ॉल्ट QuickInfo दिखाया नहीं जा रहा है:

      [Order(Before = "Default Quick Info Presenter")] 
      
  • उपकरण की नोक से पता चला जब विधि नाम लिख जो दिखाता है यह हस्ताक्षर Signature Help कहा जाता है और QuickInfo उपकरण की नोक के लिए एक बहुत ही समान तरीके से ISignatureHelpSource इनहेरिट द्वारा लागू किया जा सकता है। एक पूर्ण पूर्वाभ्यास on MSDN पाया जा सकता है:

    • उदाहरण:

      Signature Help

  • Code Snippets - जो आप के लिए अप्रासंगिक हैं।

  • Statement Completions - जो आप के लिए अप्रासंगिक हैं।

ध्यान दें कि आप उपकरण-युक्तियों के लिए अपनी परियोजना में एक IClassifier करने की आवश्यकता होगी प्रदर्शित करने के लिए, इस के साथ आप भी इतनी है कि Exceptions अलग तरह से देखा जाएगा के रूप में आप चाहते हैं दृश्य संशोधित कर सकते हैं। Guide on MSDN

दूसरी ओर विधियों पर जानकारी प्राप्त करना आपके ऊपर है। आप बाहरी मैनुअल स्रोत का उपयोग कर सकते हैं और इसे अपने IQuickInfoSource में उपयोग कर सकते हैं या ITextStructureNavigator के पढ़ने वाले शब्द का विश्लेषण करके Roslyn का उपयोग करके से मेल खाने वाले कोड दस्तावेज़ पर इसका उपयोग करके इसे XML Comment दस्तावेज़ से पढ़ सकते हैं।

क्षमा करें अगर यह थोड़ा सा अमूर्त उत्तर था लेकिन यह एक बहुत व्यापक प्रश्न है और इस तरह के विस्तार को लागू करने के कई तरीके हैं।

पीएस .: इस क्षेत्र का अध्ययन करने के लिए मैंने निम्न गुणवत्ता में एक समान विस्तार करने में कामयाब रहा है, इसलिए यदि आपके पास कार्यान्वयन के बारे में कोई निम्नलिखित प्रश्न हैं तो खुद से पूछने में संकोच न करें।

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