Sdílet prostřednictvím


Návod: Přístup k objektu DTE z rozšíření editoru

V rozšíření VSPackages můžete objekt DTE získat voláním GetService metody s typem objektu DTE. V rozšířeních MEF (Managed Extensibility Framework) můžete importovat SVsServiceProvider a volat metodu GetService s typem DTE.

Požadavky

Pokud chcete postupovat podle tohoto návodu, musíte nainstalovat sadu Visual Studio SDK. Další informace najdete v sadě Visual Studio SDK.

Získání objektu DTE

  1. Vytvořte projekt VSIX jazyka C# a pojmenujte ho DTETest. Přidejte šablonu položky klasifikátoru editoru a pojmenujte ji DTETest.

    Další informace najdete v tématu Vytvoření rozšíření pomocí šablony položky editoru.

  2. Do projektu přidejte následující odkazy na sestavení:

    • Microsoft.VisualStudio.Shell.Framework
    • Microsoft.VisualStudio.Shell.Immutable.10.0
  3. Do souboru DTETestProvider.cs přidejte následující using direktivy:

    using EnvDTE;
    using Microsoft.VisualStudio.Shell;
    
  4. DTETestProvider Ve třídě naimportujte .SVsServiceProvider

    [Import]
    internal SVsServiceProvider ServiceProvider = null;
    
  5. GetClassifier() Do metody přidejte následující kód před return příkaz:

    ThreadHelper.ThrowIfNotOnUIThread();
    DTE dte = (DTE)ServiceProvider.GetService(typeof(DTE));
    

Viz také