다음을 통해 공유


편집기 가져오기

핵심 편집기에 대한 다양한 종류의 액세스 권한을 확장에 제공하는 여러 편집기 서비스, 팩터리 및 브로커를 가져올 수 있습니다. 예를 들어 지정된 콘텐츠 형식에 대한 ITextStructureNavigator를 제공하는 ITextStructureNavigatorSelectorService를 가져올 수 있습니다. (이 탐색기를 사용하면 텍스트 버퍼에서 다양한 종류의 검색을 수행할 수 있습니다.)

편집기 가져오기를 사용하려면 Managed Extensibility Framework 구성 요소 부분을 내보내는 클래스의 필드 또는 속성으로 가져옵니다.

참고 항목

Managed Extensibility Framework에 대한 자세한 내용은 MEF(Managed Extensibility Framework)를 참조하세요.

가져오기 구문

다음 예제에서는 편집기 옵션 팩터리 서비스를 가져오는 방법을 보여 줍니다.

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

서비스를 속성이 아닌 필드로 가져오려면 변수에 할당하지 않는 것에 대한 컴파일러 경고를 방지하기 위해 선언에서 null로 설정해야 합니다.

[Import]
internal IEditorOptionsFactoryService m_editorOptions = null;

가져오기 사용에 대한 자세한 예제는 다음 연습을 참조하세요.

서비스 공급자 가져오기

Visual Studio 서비스에 대한 액세스를 가져오는 것과 동일한 방식으로 SVsServiceProvider(Microsoft.VisualStudio.Shell.Immutable.10.0 어셈블리에 있음)를 가져올 수도 있습니다.

[Import]
internal SVsServiceProvider ServiceProvider = null;

자세한 내용은 연습: 편집기 확장에서 DTE 개체 액세스를 참조하세요.

Services

편집기 서비스는 일반적으로 서비스를 제공하고 여러 구성 요소 간에 공유되는 단일 엔터티입니다.

가져오기 제공
IFileExtensionRegistryService 파일 확장과 IContentType 개체 간의 관계입니다.
IContentTypeRegistryService 개체의 IContentType 컬렉션입니다.
IVsFontsAndColorsInformationService IVsFontsAndColorsInformation 개체
IVsEditorAdaptersFactoryService 많은 편집기 어댑터 개체:

IVsCodeWindow

IVsTextBuffer

IVsTextBufferCoordinator

IVsTextView
IIncrementalSearchFactoryService 지정된 텍스트 뷰에 대한 IIncrementalSearch 개체
ITextBufferFactoryService ITextBuffer입니다.
ITextDocumentFactoryService ITextDocument입니다.
IDifferenceService 차이점의 IDifferenceCollection<T>
IHierarchicalStringDifferenceService 차이점의 IHierarchicalDifferenceCollection
IProjectionBufferFactoryService IProjectionBuffer 또는 IElisionBuffer
IBufferGraphFactoryService ITextBuffer 개체 세트에 대한 IBufferGraph
IClassifierAggregatorService ITextBuffer에 대한 IClassifier
IViewClassifierAggregatorService ITextView에 대한 IClassifier
IClassificationFormatMapService ITextView에 대한 IClassificationFormatMap
IEditorFormatMapService ITextView에 대한 IEditorFormatMap
IClassificationTypeRegistryService IClassificationType 개체의 컬렉션을 유지 관리합니다.
IBufferTagAggregatorFactoryService 텍스트 버퍼에 대한 ITagAggregator<T>
IViewTagAggregatorFactoryService 텍스트 보기에 대한 ITagAggregator<T>
IEditorOptionsFactoryService 지정된 범위에 대한 IEditorOptions
IScrollMapFactoryService 텍스트 보기에 대한 IScrollMap
ISmartIndentationService ITextView에 대한 ISmartIndent
ISmartIndentationService ISmartIndentProvider 개체를 통한 자동 들여쓰기를 가져옵니다.
ITextEditorFactoryService IWpfTextView에 대한 IWpfTextViewHost를 관리합니다.
IFormattedTextSourceFactoryService IFormattedLineSource입니다.
IRtfBuilderService 스냅샷 범위 세트에서 RTF 형식 텍스트를 생성합니다.
ITextAndAdornmentSequencerFactoryService ITextView에 대한 ITextAndAdornmentSequencer
ITextParagraphPropertiesFactoryService 보기의 텍스트 줄 서식 지정을 위한 TextParagraphProperties
IEditorOperationsFactoryService ITextView에 대한 IEditorOperations 개체
ITextSearchService 텍스트 스냅샷을 검색합니다.
ITextStructureNavigatorSelectorService IContentType으로 ITextBuffer에 대한 ITextStructureNavigator
IOutliningManagerService 텍스트 보기에 대한 IOutliningManager
IGlyphService 표준 문자 모양 세트
IIntellisenseSessionStackMapService ITextView에 대한 IIntellisenseSessionStack
IWpfKeyboardTrackingService 키보드 처리를 추적합니다.
IStandardClassificationService 표준 IClassificationType 개체
ITextUndoHistoryRegistry 텍스트 버퍼와 ITextUndoHistory 개체 간의 관계를 유지 관리합니다.

기타 가져오기

공급자 팩터리와 브로커는 일반적으로 여러 구성 요소에 여러 인스턴스를 포함할 수 있는 엔터티입니다.

가져오기 제공
IErrorProviderFactory 지정된 버퍼에 대한 ErrorTag 형식의 SimpleTagger<T>
ITextMarkerProviderFactory 텍스트 마커 태거(TextMarkerTag 형식의 SimpleTagger<T>)
IToolTipProviderFactory 지정된 ITextView에 대한 IToolTipProvider
ICompletionBroker ICompletionSession입니다.
IQuickInfoBroker IQuickInfoSession입니다.
ISignatureHelpBroker ISignatureHelpSession입니다.

참고 항목