Importações de editor
Você pode importar um número de serviços de editor, fábricas e corretores que fornecem sua extensão com tipos diferentes de acesso para o editor do núcleo. Por exemplo, você pode importar o ITextStructureNavigatorSelectorService para fornecer a você com um ITextStructureNavigator para um determinado tipo de conteúdo. (Este navegador permite que executar diferentes tipos de pesquisas em um buffer de texto).
Para usar um importação de editor, importá-lo como um campo ou propriedade de uma classe que exporta uma parte de componente da estrutura de extensibilidade gerenciado.
Dica
Para obter mais informações sobre a estrutura de extensibilidade gerenciada, consulte Managed Extensibility Framework (MEF).
Sintaxe de importação
O exemplo a seguir mostra como importar o editor de serviço de fábrica de opções.
[Import]
internal IEditorOptionsFactoryService EditorOptions { get; set; }
Se você quiser importar o serviço como um campo e não uma propriedade, você deve defini-la null na declaração para evitar os avisos do compilador sobre não atribuir a uma variável:
[Import]
internal IEditorOptionsFactoryService m_editorOptions = null;
Para obter mais exemplos do uso de importações, consulte as instruções a seguir:
Passo a passo: Criando um glifo de margem
Passo a passo: Personalizando o modo de exibição de texto
Passo a passo: Exibir dicas de ferramentas de InformaçãoRápida
Passo a passo: Exibindo a Ajuda de assinatura
Passo a passo: Exibindo a conclusão da instrução
Passo a passo: Exibindo SmartTags
Importando o provedor de serviços
Você também pode importar um SVsServiceProvider (encontrado no assembly Microsoft.VisualStudio.Shell.Immutable.10.0) da mesma maneira para obter acesso aos serviços de Visual Studio:
[Import]
internal SVsServiceProvider ServiceProvider = null;
Consulte Passo a passo: Acessando o objeto DTE de uma extensão do Editor para obter mais informações.
Serviços
Serviços de editor são entidades geralmente única que fornecem um serviço e são compartilhadas entre vários componentes.
Importar |
Fornece |
---|---|
A relação entre as extensões de arquivo e IContentType objetos. |
|
A coleção de IContentType objetos. |
|
Objetos do IVsFontsAndColorsInformation |
|
Muitos objetos de adaptador de editor: |
|
Um IIncrementalSearch o objeto para um modo de exibição de texto indicado. |
|
An ITextBuffer. |
|
An ITextDocument. |
|
Um IDifferenceCollection das diferenças. |
|
Um IHierarchicalDifferenceCollection das diferenças. |
|
An IProjectionBuffer or an IElisionBuffer. |
|
Um IBufferGraph para um conjunto de ITextBuffer objetos. |
|
An IClassifier for a ITextBuffer. |
|
An IClassifier for a ITextView. |
|
An IClassificationFormatMap for a ITextView. |
|
An IEditorFormatMap for a ITextView. |
|
Mantém a coleção de IClassificationType objetos. |
|
Um ITagAggregator para um buffer de texto. |
|
Um ITagAggregator para um modo de exibição de texto. |
|
O IEditorOptions para o escopo especificado. |
|
Um IScrollMap para um modo de exibição de texto. |
|
An ISmartIndent for a ITextView. |
|
Obtém o recuo automático com o ISmartIndentProvider objetos. |
|
Manages the IWpfTextViewHost for a IWpfTextView. |
|
Gera texto formatado em RTF de um conjunto de extensões de instantâneo. |
|
An ITextAndAdornmentSequencer for an ITextView. |
|
A TextParagraphProperties para linhas de texto em uma exibição de formatação. |
|
A IEditorOperations object for an ITextView. |
|
Procura um instantâneo de texto. |
|
An ITextStructureNavigator for an ITextBuffer by IContentType. |
|
Um IOutliningManager para um modo de exibição de texto. |
|
Um conjunto padrão de glifos. |
|
An IIntellisenseSessionStack for a ITextView. |
|
Faixas de manipulação de teclado. |
|
Padrão IClassificationType objetos. |
|
Mantém o relacionamento entre os buffers de texto e ITextUndoHistory objetos. |
Outras importações
Corretores e fábricas de provedor geralmente são entidades que podem ter várias instâncias em vários componentes.
Importar |
Fornece |
---|---|
Um SimpleTagger do tipo ErrorTag) para o buffer fornecido. |
|
Um tagger de marcador de texto (um SimpleTagger do tipo TextMarkerTag). |
|
An IToolTipProvider for a given ITextView. |
|