편집기 가져오기
핵심 편집기에 대한 다양한 종류의 액세스 권한을 확장에 제공하는 여러 편집기 서비스, 팩터리 및 브로커를 가져올 수 있습니다. 예를 들어 지정된 콘텐츠 형식에 대한 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
편집기 서비스는 일반적으로 서비스를 제공하고 여러 구성 요소 간에 공유되는 단일 엔터티입니다.
기타 가져오기
공급자 팩터리와 브로커는 일반적으로 여러 구성 요소에 여러 인스턴스를 포함할 수 있는 엔터티입니다.
가져오기 | 제공 |
---|---|
IErrorProviderFactory | 지정된 버퍼에 대한 ErrorTag 형식의 SimpleTagger<T> |
ITextMarkerProviderFactory | 텍스트 마커 태거(TextMarkerTag 형식의 SimpleTagger<T>) |
IToolTipProviderFactory | 지정된 ITextView에 대한 IToolTipProvider |
ICompletionBroker | ICompletionSession입니다. |
IQuickInfoBroker | IQuickInfoSession입니다. |
ISignatureHelpBroker | ISignatureHelpSession입니다. |