Domanda

Vorrei aggiungere una voce di menu personalizzata quando si fa clic con il pulsante destro del mouse su una determinata estensione di file in Visual Studio.

Sembra che ci siano alcuni progetti open source di supporto per raggiungere questo obiettivo, ma vorrei chiederti se qualcuno li ha mai usati e quanto sono stati facili - e puoi aiutarmi e fornire un punto di partenza?

Uno che ho studiato è: http://www.codeplex.com/ManagedMenuExtension

È stato utile?

Soluzione

Ecco un tutorial che spiega come aggiungere un menu contestuale usando una macro invece di creare un componente aggiuntivo di Visual Studio. Spero che sia d'aiuto:

Estensione dei menu di scelta rapida di Visual Studio

Altri suggerimenti

Sì, il modo più semplice è creare macro personalizzate per gestire l'attività (in VB).

Aggiunta di macro

Prima di tutto seleziona Strumenti > Macro > Macro IDE (Alt + F11). Per chiarire tutto, aggiungi un nuovo modulo, ad esempio " ContextMenu " e inserisci il seguente codice:

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics

Public Module ContextMenu

Public Sub DoSomething()
    'Few declarations'
    Dim SolutionExplorer As UIHierarchy
    Dim Item As UIHierarchyItem
    Dim SelectedItem As EnvDTE.ProjectItem

    'Getting the solution explorer'
    SolutionExplorer = DTE.Windows.Item(Constants.vsext_wk_SProjectWindow).Object()

    'Iterating through all selected items'
    For Each Item In SolutionExplorer.SelectedItems
        'Getting the item'
        SelectedItem = CType(Item.Object, EnvDTE.ProjectItem)

        'Do some stuff here'
        If SelectedItem.FileNames(1).EndsWith("txt") Then
            MsgBox("We got the text file!", , SelectedItem.FileNames(1))
        Else
            MsgBox("We got something else...", , SelectedItem.FileNames(1))
        End If
    Next
End Sub
End Module

Ovviamente, devi personalizzare il modo in cui gestisci i nomi di file selezionati. Per ora, mostrerà solo un popup per ogni file, diverso se sarà un file txt.

Personalizzazione del menu di scelta rapida

La seconda attività da fare è aggiungere la tua macro personalizzata al menu contestuale; vai a: Strumenti > Personalizza

Seleziona i menu contestuali dall'elenco su " Barre degli strumenti " scheda (la nuova barra degli strumenti con tutti i menu di scelta rapida dovrebbe apparire nella finestra principale) e passare a " Comandi " scheda. Ora, dalla barra degli strumenti dei menu di scelta rapida selezionare: " Menu contestuali di progetto e soluzione " > Item e trascinare la macro su di essa da " Comandi " scheda. Cambia il suo nome / icona / pulsante nel menu di scelta rapida.

Ora sei pronto per testarlo e usarlo. La macro appena aggiunta dovrebbe apparire nel menu contestuale Articolo. Buon divertimento!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top