Share via


Editorimporte

Sie können eine Reihe von Editordiensten, Fabriken und Brokern importieren, die Ihrer Erweiterung unterschiedliche Arten von Zugriff auf den Kern-Editor bieten. Sie können z. B. die ITextStructureNavigatorSelectorService Datei importieren, die Ihnen einen ITextStructureNavigator bestimmten Inhaltstyp zur Verfügung stellt. (Mit diesem Navigator können Sie verschiedene Arten von Suchvorgängen in einem Textpuffer ausführen.)

Um einen Editorimport zu verwenden, importieren Sie ihn als Feld oder Eigenschaft einer Klasse, die einen Komponententeil des Managed Extensibility Framework exportiert.

Hinweis

Weitere Informationen zum Managed Extensibility Framework finden Sie unter Managed Extensibility Framework (MEF).

Importsyntax

Das folgende Beispiel zeigt, wie der Editoroptionen-Factorydienst importiert wird.

[Import]
internal IEditorOptionsFactoryService EditorOptions { get; set; }

Wenn Sie den Dienst als Feld und nicht als Eigenschaft importieren möchten, sollten Sie ihn null in der Deklaration festlegen, um die Compilerwarnungen beim Zuweisen einer Variablen zu vermeiden:

[Import]
internal IEditorOptionsFactoryService m_editorOptions = null;

Weitere Beispiele für die Verwendung von Importen finden Sie in den folgenden exemplarischen Vorgehensweisen:

Importieren des Dienstanbieters

Sie können auch eine SVsServiceProvider (in der Assembly "Microsoft.VisualStudio.Shell.Immutable.10.0") auf die gleiche Weise importieren, um Zugriff auf Visual Studio-Dienste zu erhalten:

[Import]
internal SVsServiceProvider ServiceProvider = null;

Weitere Informationen finden Sie unter Walkthrough: Access the DTE object from an editor extension for more information.

Dienste

Editordienste sind im Allgemeinen einzelne Entitäten, die einen Dienst bereitstellen und für mehrere Komponenten freigegeben werden.

Importieren Umfasst:
IFileExtensionRegistryService Die Beziehung zwischen Dateierweiterungen und IContentType Objekten.
IContentTypeRegistryService Die Auflistung der IContentType-Objekte.
IVsFontsAndColorsInformationService IVsFontsAndColorsInformation Objekte.
IVsEditorAdaptersFactoryService Viele Editoradapterobjekte:

IVsCodeWindow

IVsTextBuffer

IVsTextBufferCoordinator

IVsTextView
IIncrementalSearchFactoryService Ein IIncrementalSearch Objekt für eine bestimmte Textansicht.
ITextBufferFactoryService Ein ITextBuffer-Element.
ITextDocumentFactoryService Ein ITextDocument-Element.
IDifferenceService Ein IDifferenceCollection<T> Unterschied.
IHierarchicalStringDifferenceService Ein IHierarchicalDifferenceCollection Unterschied.
IProjectionBufferFactoryService Ein IProjectionBuffer oder ein IElisionBuffer.
IBufferGraphFactoryService Eine IBufferGraph für eine Gruppe von ITextBuffer Objekten.
IClassifierAggregatorService Ein IClassifier für ein ITextBuffer.
IViewClassifierAggregatorService Ein IClassifier für ein ITextView.
IClassificationFormatMapService Ein IClassificationFormatMap für ein ITextView.
IEditorFormatMapService Ein IEditorFormatMap für ein ITextView.
IClassificationTypeRegistryService Verwaltet die Auflistung von IClassificationType Objekten.
IBufferTagAggregatorFactoryService Ein ITagAggregator<T> für einen Textpuffer.
IViewTagAggregatorFactoryService Eine ITagAggregator<T> für eine Textansicht.
IEditorOptionsFactoryService Der IEditorOptions für den angegebenen Bereich.
IScrollMapFactoryService Eine IScrollMap für eine Textansicht.
ISmartIndentationService Ein ISmartIndent für ein ITextView.
ISmartIndentationService Ruft den automatischen Einzug durch die ISmartIndentProvider Objekte ab.
ITextEditorFactoryService Verwaltet die IWpfTextViewHost for a IWpfTextView.
IFormattedTextSourceFactoryService Ein IFormattedLineSource-Element.
IRtfBuilderService Generiert RTF-formatierten Text aus einer Reihe von Momentaufnahme Spannen.
ITextAndAdornmentSequencerFactoryService Ein ITextAndAdornmentSequencer für ein ITextView.
ITextParagraphPropertiesFactoryService A TextParagraphProperties zum Formatieren von Textzeilen in einer Ansicht.
IEditorOperationsFactoryService Ein IEditorOperations Objekt für ein ITextView.
ITextSearchService Durchsucht einen Text Momentaufnahme.
ITextStructureNavigatorSelectorService Eine ITextStructureNavigator für ein ITextBuffer von IContentType.
IOutliningManagerService Eine IOutliningManager für eine Textansicht.
IGlyphService Ein Standardsatz von Glyphen.
IIntellisenseSessionStackMapService Ein IIntellisenseSessionStack für ein ITextView.
IWpfKeyboardTrackingService Verfolgt die Tastaturbehandlung.
IStandardClassificationService Standardobjekte IClassificationType .
ITextUndoHistoryRegistry Verwaltet die Beziehung zwischen Textpuffern und ITextUndoHistory Objekten.

Andere Importe

Anbieterfabriken und Broker sind im Allgemeinen Entitäten, die mehrere Instanzen in mehreren Komponenten aufweisen können.

Importieren Umfasst:
IErrorProviderFactory Ein SimpleTagger<T> Typ ErrorTag) für den angegebenen Puffer.
ITextMarkerProviderFactory Ein Textmarker-Tagger (ein SimpleTagger<T> Typ TextMarkerTag).
IToolTipProviderFactory Eine IToolTipProvider für eine bestimmte .ITextView
ICompletionBroker Ein ICompletionSession-Element.
IQuickInfoBroker Ein IQuickInfoSession-Element.
ISignatureHelpBroker Ein ISignatureHelpSession-Element.

Siehe auch