다음을 통해 공유


연습: 콘텐츠 형식의 파일 이름 확장명에 연결

고유한 콘텐츠 형식을 정의 하 고 확장성 프레임 워크 (MEF) 관리 되는 확장 편집기를 사용 하 여 파일 이름 확장명 연결 수 있습니다. 경우에 따라 파일 이름 확장명이 언어 서비스에 이미 정의 되어 있습니다. 그럼에도 불구 하 고 MEF를 사용 하 여 여전히 콘텐츠 형식에 링크 시켜야 합니다.

이 연습을 수행 하려면 설치 해야 해당 Visual Studio 2010 SDK입니다. 자세한 내용은 Visual Studio 개요를 확장합니다.. Visual Studio SDK를 다운로드 하는 방법를 참조 하십시오. Visual Studio 확장성 개발자 센터 MSDN 웹 사이트에서.

MEF 프로젝트 만들기

MEF 프로젝트를 만들려면

  1. C# 또는 Visual Basic 편집기 분류자 프로젝트를 만듭니다. 솔루션의 이름을 ContentTypeTest.

  2. VSIX 매니페스트 편집기에서 source.extension.vsixmanifest 파일을 엽니다.

  3. 있는지 확인은 Content 머리글 포함 MEF 구성 요소 콘텐츠 형식 및 경로 Contenttypetest.dll으로 설정 됩니다.

  4. 저장 하 고 source.extension.vsixmanifest를 닫습니다.

  5. 기존 클래스 파일을 삭제 합니다.

콘텐츠 형식 정의

콘텐츠 형식을 정의 하려면

  1. 클래스 파일을 추가 하 고 이름을 FileAndContentTypes.

  2. 다음 추가 using 지시문 (Imports Visual Basic 문의).

    Imports System.ComponentModel.Composition
    Imports Microsoft.VisualStudio.Text.Classification
    Imports Microsoft.VisualStudio.Utilities
    
    using System.ComponentModel.Composition;
    using Microsoft.VisualStudio.Text.Classification;
    using Microsoft.VisualStudio.Utilities;
    
  3. 정의 포함 하는 정적 클래스에서 Visual Basic (모듈)를 선언 합니다.

    Friend Module FileAndContentTypeDefinitions
    
    End Module
    
    internal static class FileAndContentTypeDefinitions
    
  4. 이 클래스에서 내보내기는 ContentTypeDefinition "숨긴" 이름을 지정 하 고 "텍스트"으로 해당 기본 정의 선언 합니다.

    <Export(), Name("hid"), BaseDefinition("text")>
    Friend myDefinition1 As ContentTypeDefinition
    
    [Export]
    [Name("hid")]
    [BaseDefinition("text")]
    internal static ContentTypeDefinition hidingContentTypeDefinition;
    

콘텐츠 형식에 연결 하는 파일 이름 확장명

콘텐츠 형식에 파일 확장명을 연결 하려면

  • 이 콘텐츠 형식의 파일 이름 확장명을 매핑하려면 내보내기는 FileExtensionToContentTypeDefinition ".hid" 확장명 가진 및 콘텐츠 형식을 "숨긴".

    <Export(), FileExtension(".hid"), ContentType("hid")>
    Friend myDefinition2 As FileExtensionToContentTypeDefinition
    
    [Export]
    [FileExtension(".hid")]
    [ContentType("hid")]
    internal static FileExtensionToContentTypeDefinition hiddenFileExtensionDefinition;
    

편집기로 내보낼 콘텐츠 형식 추가

편집기 확장에 콘텐츠 형식을 추가 하려면

  1. 확장을 편집기를 만듭니다.

  2. 내보낼 때 추가 된 ContentTypeAttribute "을 숨긴" 형식.

    <Export(), ContentType("hid")>
    Friend myDefinition3 As FileExtensionToContentTypeDefinition
    
    [Export]
    [ContentType("hid")]
    

참고 항목

개념

편집기 확장 지점