मैं एक विजुअल स्टूडियो पैकेज बना रहा हूं (यह मेरा पहला समय है) और मेरा अंतिम लक्ष्य केवल समाधान एक्सप्लोरर के लिए संदर्भ-मेनू आइटम बनाना है कुछ फ़ाइल प्रकारों पर काम करता है। (मैंने सोचा कि यह एक आम बात होगी, लेकिन इस पर कोई सभ्य ट्यूटोरियल नहीं मिला, इसलिए यदि आप किसी को जानते हैं तो कृपया मुझे बताएं)विजुअल स्टूडियो पैकेज: एक कस्टम समाधान एक्सप्लोरर संदर्भ मेनू आइटम की दृश्यता सेटिंग
मैंने पहले टूलबार में कोई आइटम बनाने के लिए एक साधारण एमएसडीएन गाइड का पालन किया था (मैं भूल जाता हूं कि इसे जोड़ने के लिए कहां था) और यह ठीक काम किया।
फिर मुझे इसे समाधान एक्सप्लोरर संदर्भ मेनू में स्थानांतरित करने का एक तरीका मिला। यह इस तरह .vsct
फ़ाइल एक तत्व जोड़ तोड़ और होने से हासिल की थी:
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_ITEMNODE"/>
शायद कोई फर्क नहीं पड़ता कि, लेकिन मैं दृश्य सेट करने के लिए कोशिश कर रहा हूँ।
अब, क्योंकि मैं केवल कुछ फ़ाइल प्रकारों के लिए आइटम दिखाना चाहता हूं, मुझे राइट-क्लिक बटन दबाए जाने पर फ़ाइल को जांचने का एक तरीका ढूंढना होगा। निम्न कोड के साथ समाप्त हो गया एक लंबी खोज के कम found this काटना, मैं और:
protected override void Initialize()
{
//stuff
OleMenuCommandService mcs = GetService(typeof(IMenuCommandService)) as OleMenuCommandService;
menuItem.BeforeQueryStatus += menuItem_BeforeQueryStatus;
//more stuff
}
void menuItem_BeforeQueryStatus(object sender, EventArgs e)
{
var myCommand = sender as OleMenuCommand;
myCommand.Text = "NEW NAME";
}
ऊपर के उदाहरण मैं सिर्फ कोशिश करते हैं और यह काम करता है साबित करने के लिए पाठ सेट करने के लिए कोशिश कर रहा हूँ में, मैं जानता हूँ कि एक Visible
संपत्ति नहीं है लेकिन मैं इस कदम को पहले काम करना चाहता हूं। BeforeQueryStatus
ईवेंट निकाल दिया गया है, और डिबगिंग कोड निष्पादन के रूप में अपेक्षित दिखाता है। हालांकि, संदर्भ मेनू आइटम में कोई बदलाव नहीं है, यह मूल पाठ के साथ रहता है।
मुझे यहां क्या याद आ रही है? यह अपडेट क्यों नहीं हो रहा है?
हम निर्दिष्ट करने की आवश्यकता है कि:
शानदार खोज, मुझे यकीन है कि यह दूसरों के लिए भी बहुत उपयोगी होगा – musefan
किसी कारण से वही गाइड यहां भी मिल सकते हैं: Microsoft.VisualStudio.VSConstants.UICONTEXT। मुझे इस पृष्ठ पर जानकारी मिली। http://www.mztools.com/articles/2013/MZ2013027.aspx –