Интерфейс IVsPackageExtensionProvider
Опубликовано: Октябрь 2016
Предоставляет «принудительной отправки»-стиль точек расширения для пакетов.
Пространство имен: Microsoft.VisualStudio.Shell.Interop
Сборка: Microsoft.VisualStudio.Shell.Interop.11.0 (в Microsoft.VisualStudio.Shell.Interop.11.0.dll)
Синтаксис
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]
[GuidAttribute("1FC6AF83-7F43-467E-B2C4-28E2B1B376AB")]
public interface IVsPackageExtensionProvider
[InterfaceTypeAttribute(ComInterfaceType::InterfaceIsIUnknown)]
[GuidAttribute("1FC6AF83-7F43-467E-B2C4-28E2B1B376AB")]
public interface class IVsPackageExtensionProvider
[<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>]
[<GuidAttribute("1FC6AF83-7F43-467E-B2C4-28E2B1B376AB")>]
type IVsPackageExtensionProvider = interface end
<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
<GuidAttribute("1FC6AF83-7F43-467E-B2C4-28E2B1B376AB")>
Public Interface IVsPackageExtensionProvider
Методы
Имя | Описание | |
---|---|---|
![]() |
CreateExtensionInstance(Guid, Guid) | Создает экземпляр запрошенного расширения. |
Комментарии
Этот интерфейс является альтернативой более обычной модели «фабричного», где пакет, в его SetSite метод регистрирует экземпляров фабрик центра регистратора. Эта модель требует создания центра регистратора даже если эта функция еще не требуется. То есть «принудительной отправки»-стиля, где пакет помещает его реализацию фабрики в среде.
С IVsPackageExtensionProvider, экземпляров точки расширения «извлекается» по запросу из пакетов при необходимости. Это позволяет пакета задержка создания экземпляров точки расширения, пока они действительно нужны.
Можно повторно реализовать традиционные проекта, редактора и фабрики элементов пользовательского интерфейса в виде IVsPackageExtensionProvider.
См. также
Пространство имен Microsoft.VisualStudio.Shell.Interop
Вернуться в начало