Пошаговое руководство: Связывание тип контента в расширение имени файла
Можно указать собственный тип содержимого и связать расширение имени файла на него с помощью редактора управляемых расширений .NET Framework расширяемости (MEF). В некоторых случаях расширение имени файла уже определено службой языка; однако, чтобы использовать ее с MEF, которые необходимо связать с типом содержимого.
Для поиска данного пошагового руководства необходимо устанавливать Visual Studio 2010 пакет SDK. Дополнительные сведения см. в разделе интеграция SDK Visual Studio. Чтобы узнать, как загрузить пакет SDK для Visual Studio см. в разделе Центр разработчиков расширяемости Visual Studio на веб-сайте MSDN.
Создание проекта MEF
Создание проекта MEF
Создайте проект классификатора редактора c# или Visual Basic. Назовите решение ContentTypeTest.
Откройте файл source.extension.vsixmanifest в редакторе манифеста VSIX.
Убедитесь, что Content заголовок содержит тип содержимого MEF компонента и путь имеет значение ContentTypeTest.dll.
Сохранить и закрыть source.extension.vsixmanifest.
Удалите существующие файлы классов.
Определение типа содержимого
Задать тип содержимого
Добавьте файл классов и назовите его FileAndContentTypes.
Добавьте следующие действия 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;
Объявите статический класс (модуль в Visual Basic), который содержит определения.
Friend Module FileAndContentTypeDefinitions End Module
internal static class FileAndContentTypeDefinitions
В этом классе экспортировать a ContentTypeDefinition именем "скрыть" и объявите его базовое определение для "текст".
<Export(), Name("hid"), BaseDefinition("text")> Friend myDefinition1 As ContentTypeDefinition
[Export] [Name("hid")] [BaseDefinition("text")] internal static ContentTypeDefinition hidingContentTypeDefinition;
Связать расширение имени файла к типу содержимого
Связать расширение имени файла к типу содержимого
Чтобы сопоставить данный тип содержимого к расширению имени файла, экспортировать a FileExtensionToContentTypeDefinition имеет расширение .hid" и "тип содержимого "скрывал".
<Export(), FileExtension(".hid"), ContentType("hid")> Friend myDefinition2 As FileExtensionToContentTypeDefinition
[Export] [FileExtension(".hid")] [ContentType("hid")] internal static FileExtensionToContentTypeDefinition hiddenFileExtensionDefinition;
Добавить тип содержимого к экспорту редактора
Добавить тип содержимого к расширению редактора
Создайте расширение редактора.
При экспорте его add a ContentTypeAttribute тип "скрыть" на него.
<Export(), ContentType("hid")> Friend myDefinition3 As FileExtensionToContentTypeDefinition
[Export] [ContentType("hid")]