Importations de l’éditeur

Vous pouvez importer un certain nombre de services d’éditeur, de fabriques et de répartiteurs qui fournissent à votre extension différents types d’accès à l’éditeur principal. Par exemple, vous pouvez importer le ITextStructureNavigatorSelectorService fichier pour vous fournir un ITextStructureNavigator type de contenu donné. (Ce navigateur vous permet d’effectuer différents types de recherches sur une mémoire tampon de texte.)

Pour utiliser une importation d’éditeur, vous l’importez en tant que champ ou propriété d’une classe qui exporte un composant Managed Extensibility Framework.

Remarque

Pour plus d’informations sur l’infrastructure d’extensibilité managée, consultez Managed Extensibility Framework (MEF).

Syntaxe d’importation

L’exemple suivant montre comment importer le service d’usine options de l’éditeur.

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

Si vous souhaitez importer le service en tant que champ et non une propriété, vous devez le définir null dans la déclaration afin d’éviter les avertissements du compilateur concernant l’échec de l’affectation à une variable :

[Import]
internal IEditorOptionsFactoryService m_editorOptions = null;

Pour plus d’exemples d’utilisation des importations, consultez les procédures pas à pas suivantes :

Importer le fournisseur de services

Vous pouvez également importer un SVsServiceProvider (trouvé dans l’assembly Microsoft.VisualStudio.Shell.Immutable.10.0) de la même façon pour accéder aux services Visual Studio :

[Import]
internal SVsServiceProvider ServiceProvider = null;

Pour plus d’informations, consultez procédure pas à pas : accéder à l’objet DTE à partir d’une extension d’éditeur.

Services

Les services d’éditeur sont généralement des entités uniques qui fournissent un service et sont partagés entre plusieurs composants.

Importer Fournit
IFileExtensionRegistryService Relation entre les extensions de fichier et IContentType les objets.
IContentTypeRegistryService Collection d'objets IContentType.
IVsFontsAndColorsInformationService IVsFontsAndColorsInformation Objets.
IVsEditorAdaptersFactoryService De nombreux objets d’adaptateur d’éditeur :

IVsCodeWindow

IVsTextBuffer

IVsTextBufferCoordinator

IVsTextView
IIncrementalSearchFactoryService Objet IIncrementalSearch pour une vue de texte donnée.
ITextBufferFactoryService ITextBuffer.
ITextDocumentFactoryService ITextDocument.
IDifferenceService Des IDifferenceCollection<T> différences.
IHierarchicalStringDifferenceService Des IHierarchicalDifferenceCollection différences.
IProjectionBufferFactoryService Un IProjectionBuffer ou un IElisionBuffer.
IBufferGraphFactoryService Pour IBufferGraph un ensemble d’objets ITextBuffer .
IClassifierAggregatorService Un IClassifier pour un ITextBuffer.
IViewClassifierAggregatorService Un IClassifier pour un ITextView.
IClassificationFormatMapService Un IClassificationFormatMap pour un ITextView.
IEditorFormatMapService Un IEditorFormatMap pour un ITextView.
IClassificationTypeRegistryService Conserve la collection d’objets IClassificationType .
IBufferTagAggregatorFactoryService Pour ITagAggregator<T> une mémoire tampon de texte.
IViewTagAggregatorFactoryService Pour ITagAggregator<T> une vue de texte.
IEditorOptionsFactoryService Pour IEditorOptions l’étendue spécifiée.
IScrollMapFactoryService Pour IScrollMap une vue de texte.
ISmartIndentationService Un ISmartIndent pour un ITextView.
ISmartIndentationService Obtient la mise en retrait automatique par le biais des ISmartIndentProvider objets.
ITextEditorFactoryService Gère l’objet IWpfTextViewHost pour un IWpfTextView.
IFormattedTextSourceFactoryService IFormattedLineSource.
IRtfBuilderService Génère du texte au format RTF à partir d’un ensemble d’étendues de instantané.
ITextAndAdornmentSequencerFactoryService Un ITextAndAdornmentSequencer pour un ITextView.
ITextParagraphPropertiesFactoryService Pour TextParagraphProperties mettre en forme des lignes de texte dans une vue.
IEditorOperationsFactoryService Objet IEditorOperations pour un ITextView.
ITextSearchService Recherche un texte instantané.
ITextStructureNavigatorSelectorService Un ITextStructureNavigator pour un ITextBuffer par IContentType.
IOutliningManagerService Pour IOutliningManager une vue de texte.
IGlyphService Ensemble standard de glyphes.
IIntellisenseSessionStackMapService Un IIntellisenseSessionStack pour un ITextView.
IWpfKeyboardTrackingService Effectue le suivi de la gestion du clavier.
IStandardClassificationService Objets standard IClassificationType .
ITextUndoHistoryRegistry Conserve la relation entre les mémoires tampons de texte et ITextUndoHistory les objets.

Autres importations

Les fabriques de fournisseurs et les répartiteurs sont généralement des entités qui peuvent avoir plusieurs instances dans plusieurs composants.

Importer Fournit
IErrorProviderFactory Type SimpleTagger<T> ) ErrorTagpour la mémoire tampon donnée.
ITextMarkerProviderFactory Balisage de marqueur de texte (type SimpleTagger<T> ).TextMarkerTag
IToolTipProviderFactory Un IToolTipProvider pour un donné ITextView.
ICompletionBroker ICompletionSession.
IQuickInfoBroker IQuickInfoSession.
ISignatureHelpBroker ISignatureHelpSession.

Voir aussi