Share via


AsyncModelingPackage 类

定义

重要

此 API 不符合 CLS。

工具箱相关位

public ref class AsyncModelingPackage abstract : Microsoft::VisualStudio::Shell::AsyncPackage, IServiceProvider, Microsoft::VisualStudio::Shell::Interop::IVsAsyncToolWindowFactory, Microsoft::VisualStudio::Shell::Interop::IVsToolWindowFactory
public ref class AsyncModelingPackage abstract : Microsoft::VisualStudio::Shell::AsyncPackage, IServiceProvider, Microsoft::VisualStudio::Modeling::Shell::IToolWindowProvider, Microsoft::VisualStudio::Shell::Interop::IVsAsyncToolWindowFactory, Microsoft::VisualStudio::Shell::Interop::IVsToolWindowFactory
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class AsyncModelingPackage : Microsoft.VisualStudio.Shell.AsyncPackage, IServiceProvider, Microsoft.VisualStudio.Shell.Interop.IVsAsyncToolWindowFactory, Microsoft.VisualStudio.Shell.Interop.IVsToolWindowFactory
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class AsyncModelingPackage : Microsoft.VisualStudio.Shell.AsyncPackage, IServiceProvider, Microsoft.VisualStudio.Modeling.Shell.IToolWindowProvider, Microsoft.VisualStudio.Shell.Interop.IVsAsyncToolWindowFactory, Microsoft.VisualStudio.Shell.Interop.IVsToolWindowFactory
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AsyncModelingPackage = class
    inherit AsyncPackage
    interface IVsToolWindowFactory
    interface IVsAsyncToolWindowFactory
    interface IServiceProvider
[<System.Runtime.InteropServices.ComVisible(true)>]
type AsyncModelingPackage = class
    inherit AsyncPackage
    interface IVsToolWindowFactory
    interface IVsAsyncToolWindowFactory
    interface IServiceProvider
    interface IToolWindowProvider
Public MustInherit Class AsyncModelingPackage
Inherits AsyncPackage
Implements IServiceProvider, IVsAsyncToolWindowFactory, IVsToolWindowFactory
Public MustInherit Class AsyncModelingPackage
Inherits AsyncPackage
Implements IServiceProvider, IToolWindowProvider, IVsAsyncToolWindowFactory, IVsToolWindowFactory
继承
AsyncModelingPackage
属性
实现

构造函数

AsyncModelingPackage()

工具箱相关位

属性

ApplicationRegistryRoot

获取当前 Visual Studio 注册表配置单元的根注册表项。

(继承自 Package)
DisposalToken

公开CancellationToken可用于检查(如果已释放包)。 当 Visual Studio 开始关闭时,在后台线程上运行的异步任务可能会发生这种情况。 用于 ShutdownToken 早期指示 VS 正在关闭。

(继承自 AsyncPackage)
JoinableTaskCollection

获取此包启动的异步任务的集合。

(继承自 AsyncPackage)
JoinableTaskFactory

获取用于此包启动的异步任务的工厂。

(继承自 AsyncPackage)
Locator

用于查找模型元素引用的帮助程序。

SetupMode

工具箱相关位

UserDataPath

获取 Visual Studio 的用户数据存储的路径。

(继承自 Package)
UserLocalDataPath

获取 Visual Studio 的本地用户数据存储的路径。

(继承自 Package)
UserRegistryRoot

获取可用于存储用户数据的注册表项。

(继承自 Package)
Zombied

获取一个值,该值指示包是否处于关闭过程中。

(继承自 Package)

方法

AddOptionKey(String)

将用户选项密钥名称添加到选项键列表中。

(继承自 Package)
AddOrReplaceToolboxItem(IToolboxService, ModelingToolboxItemBase)
已过时.

添加工具箱项(如果不存在)。 如果项已存在,将替换现有工具箱项

AddService(Type, AsyncServiceCreatorCallback)

将异步服务添加到此包。 此服务在此包之外不可见。

(继承自 AsyncPackage)
AddService(Type, AsyncServiceCreatorCallback, Boolean)

将异步服务添加到此包。 此服务可能在此包之外可见,也可能不可见,具体取决于 的值 promote

(继承自 AsyncPackage)
AddService(Type, AsyncServiceCreatorWithProgressCallback)

向此包添加一个异步服务,该服务支持初始化过程中的进度更新。 此服务在此包之外不可见。

(继承自 AsyncPackage)
AddService(Type, AsyncServiceCreatorWithProgressCallback, Boolean)

向此包添加一个异步服务,该服务支持初始化过程中的进度更新。 此服务可能在此包之外可见,也可能不可见,具体取决于 的值 promote

(继承自 AsyncPackage)
AddToolboxItemsAsync(IEnumerable<ModelingToolboxItemBase>, CancellationToken)

将传递的 ModelingToolboxItemBase 项集合添加到 Visual Studio 工具箱中。

AddToolWindow(Type)

现在,我们将提供基本的工具窗口支持,以查看一切是否正常工作。 这应该在基本包级别完成,其方式与提供服务类似。

CreateInstance(Guid, Guid, Type)

使用 Visual Studio 的本地注册表 CLSID 对象创建指定的 COM 对象。

(继承自 Package)
CreateLocator()

用于为此包创建 ModelElementLocator 实例的工厂方法。

CreateTool(Guid)

如有必要,允许派生类提供实现。

(继承自 Package)
CreateToolboxItems()

在派生类中重写时,返回此包提供的动态/自定义工具箱项的列表。

CreateToolWindow(Guid, Int32)

创建具有指定 ID 的指定类型的工具窗口。

(继承自 Package)
CreateToolWindow(Guid, UInt32)

Create指定的工具窗口。

CreateToolWindow(Guid, UInt32, Object)

工具箱相关位

CreateToolWindow(Type, Int32)

创建具有指定 ID 的指定类型的工具窗口。

(继承自 Package)
CreateToolWindow(Type, Int32, Object)

Create具有指定 ID 的指定类型的工具窗口。

(继承自 Package)
CreateToolWindow(Type, Int32, UInt32)

创建具有指定 ID 的指定类型的工具窗口。

(继承自 Package)
CreateToolWindow(Type, Int32, UInt32, Object, Guid)

Create具有指定 ID 的指定类型的工具窗口。 这是唯一应调用 IVsUiShell.CreateToolWindow ()

(继承自 Package)
Dispose(Boolean)

释放 对象和关联的取消令牌。

(继承自 AsyncPackage)
FindToolWindow(Type, Int32, Boolean)

获取对应于指定类型和 ID 的工具窗口。

(继承自 Package)
FindToolWindowAsync(Type, Int32, Boolean, CancellationToken)

异步查找与指定类型和 ID 对应的工具窗口。 如果不存在,则创建并返回一个 (如果为 true),如果 createcreate 为 false,则返回 null。

(继承自 AsyncPackage)
FindWindowPane(Type, Int32, Boolean)

获取对应于指定类型和 ID 的窗口窗格,如果不存在该类型的窗口窗格,则创建一个窗口窗格(如果被告知这样做)。

(继承自 Package)
FindWindowPaneAsync(Type, Int32, Boolean, CancellationToken)

异步查找与指定类型和 ID 对应的窗口窗格。 如果不存在,则创建并返回一个 (如果为 true),如果 createcreate 为 false,则返回 null。

(继承自 AsyncPackage)
GetAsyncToolWindowFactory(Guid)

如果工具窗口支持异步创建,则返回由 toolWindowType标识的工具窗口的异步工具窗口工厂接口。 如果不支持异步创建,则返回 null。

(继承自 AsyncPackage)
GetAutomationObject(String)

获取 VSPackage 的自动化对象。

(继承自 Package)
GetDialogPage(Type)

获取请求的对话页。

(继承自 Package)
GetOutputPane(Guid, String)

获取请求的输出窗口。

(继承自 Package)
GetProviderLocale()

返回与此服务提供程序关联的区域设置。

(继承自 Package)
GetService(Type)

检索注册到此包的服务。 此方法是同步的,即使以这种方式检索到的异步服务也会同步检索。

(继承自 AsyncPackage)
GetServiceAsync(Type)

检索异步服务。

(继承自 AsyncPackage)
GetServiceAsync(Type, Boolean)

检索异步服务,但允许调用方提示可能不必吞咽异常。 但是,它并不能保证在失败情况下会引发异常。

(继承自 AsyncPackage)
GetToolboxItemData(String, DataFormats+Format)

获取指定工具箱项 ID 和数据格式的数据格式的内容。

(继承自 Package)
GetToolboxItemDataAsync(String, DataFormats+Format)

工具箱相关位

(继承自 Package)
GetToolWindow(Type)

返回对应于给定类型的工具窗口实例。 我们仅支持单实例工具窗口,因此这始终是 1-1 映射。

GetToolWindow(Type, Boolean)

返回对应于给定类型的工具窗口实例。 我们仅支持单实例工具窗口,因此这始终是 1-1 映射。

GetToolWindowTitle(Type, Int32)

返回要用于工具窗口的标题字符串。 如果返回 null,则工具窗口的类型名称将用于游戏。

(继承自 AsyncPackage)
Initialize()

密封此方法。 由于几乎不可避免的死锁风险,SetSite (在 UI 线程上仍会出现初始化) ,即使对于异步包也是如此。 由于大多数异步包作者在逻辑上会假设初始化发生在 b/g 线程上,因此,他们可能会执行成本高昂的 (同步) 替代内的内容,从而破坏异步负载的一些优势。 为了帮助他们摆脱这种限制,我们将密封它,因此他们可以替代的只是异步初始化,这是在 b/g 线程上调用的。

(继承自 AsyncPackage)
InitializeAsync(CancellationToken, IProgress<ServiceProgressData>)

派生类应重写此方法以执行特定于包的工作,例如注册编辑器工厂

InitializeToolWindowAsync(Type, Int32, CancellationToken)

执行初始化以准备创建由 toolWindowType标识的工具窗口。

(继承自 AsyncPackage)
InstantiateToolWindow(Type)

工具箱相关位

(继承自 Package)
InstantiateToolWindow(Type, Object)

构造指定类型的工具窗口。

(继承自 Package)
IsLocalService(Type)

确定是否可以在不需要 RPC 转换到 UI 线程的情况下检索指定的服务类型。

(继承自 Package)
OnAfterPackageLoadedAsync(CancellationToken)

当被派生类型重写时,可能会启动具有副作用的操作,这些操作严格意义上不属于包加载 InitializeAsync(CancellationToken, IProgress<ServiceProgressData>) 的一部分,但应该在包加载 (后不久发生,例如更新命令状态) 。

(继承自 AsyncPackage)
OnLoadOptions(String, Stream)

当有选项要读出解决方案文件时,由包类调用。

(继承自 Package)
OnSaveOptions(String, Stream)

当有选项要保存到解决方案文件时,由 Package 类调用。

(继承自 Package)
OnToolboxInitialized(Object, EventArgs)

ToolboxInitialized 事件的事件处理程序 动态/自定义工具箱项将重新注册。

OnToolboxUpgraded(Object, EventArgs)

ToolboxUpgraded 事件的事件处理程序 动态/自定义工具箱项将重新注册。

ParseToolboxResource(TextReader, Guid)

分析适当格式的嵌入文本资源,以获取有关应将哪些项添加到工具箱的信息。

(继承自 Package)
ParseToolboxResource(TextReader, ResourceManager)

分析适当格式的嵌入文本资源,以获取有关应将哪些项添加到工具箱的信息。

(继承自 Package)
QueryClose(Boolean)

调用 以询问包是否可以关闭 shell。

(继承自 Package)
RegisterEditorFactory(IVsEditorFactory)

向 Visual Studio 注册编辑器工厂。

(继承自 Package)
RegisterProjectFactory(IVsProjectFactory)

向 Visual Studio 注册项目工厂。

(继承自 Package)
RemoveService(Type)

删除注册到此包的异步服务。

(继承自 AsyncPackage)
RemoveService(Type, Boolean)

删除注册到此包的异步服务。

(继承自 AsyncPackage)
SetupDynamicToolboxAsync(CancellationToken)

添加动态/自定义工具箱项。

ShowOptionPage(Type)

显示指定的工具选项页。

(继承自 Package)
ShowToolWindowAsync(Type, Int32, Boolean, CancellationToken)

异步显示对应于指定类型和 ID 的工具窗口。 如果不存在,则创建并返回一个 (如果为 true),如果 createcreate 为 false,则返回 null。

(继承自 AsyncPackage)

事件

ToolboxInitialized

每当 Visual Studio 初始化其工具箱时生成的事件。

(继承自 Package)
ToolboxUpgraded

每当 Visual Studio 升级其工具箱时生成的事件。

(继承自 Package)

显式接口实现

IAsyncLoadablePackageInitialize.Initialize(IAsyncServiceProvider, IProfferAsyncService, IAsyncProgressCallback)

SetSite 的异步版本,从 b/g 线程调用。

(继承自 AsyncPackage)
IAsyncLoadablePackageInitialize.Initialize(IAsyncServiceProvider, IProfferAsyncService, IAsyncProgressCallback)

SetSite 的异步版本,从 b/g 线程调用。

(继承自 AsyncPackage)
IAsyncServiceProvider.QueryServiceAsync(Guid)

获取此包提供的异步初始化服务。

(继承自 AsyncPackage)
IAsyncServiceProvider.QueryServiceAsync(Guid)

获取此包提供的异步初始化服务。

(继承自 AsyncPackage)
IOleCommandTarget.Exec(Guid, UInt32, UInt32, IntPtr, IntPtr)

执行指定的命令或显示命令的帮助。

(继承自 Package)
IOleCommandTarget.QueryStatus(Guid, UInt32, OLECMD[], IntPtr)

查询该对象以获得由用户界面事件生成的一个或多个命令的状态。

(继承自 Package)
IServiceContainer.AddService(Type, Object)

将给定服务添加到 VSPackage 的服务容器。

(继承自 Package)
IServiceContainer.AddService(Type, Object, Boolean)

将给定服务添加到 VSPackage 的服务容器。

(继承自 Package)
IServiceContainer.AddService(Type, ServiceCreatorCallback)

将给定服务添加到 VSPackage 的服务容器。

(继承自 Package)
IServiceContainer.AddService(Type, ServiceCreatorCallback, Boolean)

通过指定的 ServiceCreatorCallback将给定服务添加到服务容器中。

(继承自 Package)
IServiceContainer.RemoveService(Type)

从服务容器中删除给定的服务类型。

(继承自 Package)
IServiceContainer.RemoveService(Type, Boolean)

从服务容器中删除给定的服务类型,并选择性地将服务的删除提升为父服务容器。

(继承自 Package)
IServiceProvider.GetService(Type)

获取指定类型的服务。

(继承自 Package)
IServiceProvider.QueryService(Guid, Guid, IntPtr)

内部 IServiceProvider 实现。

(继承自 Package)
IVsAsyncToolWindowFactory.CreateToolWindow(Guid, UInt32, Object)

创建具有指定 ID 的指定类型的工具窗口。

(继承自 AsyncPackage)
IVsAsyncToolWindowFactory.GetToolWindowTitle(Guid, UInt32)

返回要用于工具窗口的标题字符串。 如果返回 null,则工具窗口的类型名称将用于游戏。

(继承自 AsyncPackage)
IVsAsyncToolWindowFactory.InitializeToolWindowAsync(Guid, UInt32)

执行初始化以准备创建由 toolWindowType标识的工具窗口。

(继承自 AsyncPackage)
IVsPackage.Close()

关闭并释放包。

(继承自 Package)
IVsPackage.GetAutomationObject(String, Object)

获取此包的自动化友好对象。

(继承自 Package)
IVsPackage.GetPropertyPage(Guid, VSPROPSHEETPAGE[])

授予对“工具”菜单“选项”和“自定义工具箱”对话框的属性页的访问权限。

(继承自 Package)
IVsPackage.QueryClose(Int32)

调用 以询问 VSPackage 是否可以关闭 Visual Studio shell。

(继承自 Package)
IVsPackage.ResetDefaults(UInt32)

重置工具箱默认值。

(继承自 Package)
IVsPackage.SetSite(IServiceProvider)

初始化 Visual Studio 环境中的 VSPackage。

(继承自 Package)
IVsPersistSolutionOpts.LoadUserOptions(IVsSolutionPersistence, UInt32)

加载给定解决方案的用户选项。

(继承自 Package)
IVsPersistSolutionOpts.ReadUserOptions(IStream, String)

读取给定解决方案的用户选项。

(继承自 Package)
IVsPersistSolutionOpts.SaveUserOptions(IVsSolutionPersistence)

保存给定解决方案的用户选项。

(继承自 Package)
IVsPersistSolutionOpts.WriteUserOptions(IStream, String)

写入给定解决方案的用户选项。

(继承自 Package)
IVsToolboxItemProvider.GetItemContent(String, UInt16, IntPtr)

获取项。

(继承自 Package)
IVsToolboxItemProvider2.GetItemContentAsync(String, UInt16)

工具箱相关位

(继承自 Package)
IVsToolWindowFactory.CreateToolWindow(Guid, UInt32)

创建具有指定 ID 的指定类型的工具窗口。

(继承自 Package)
IVsUserSettings.ExportSettings(String, IVsSettingsWriter)

此方法实现 IVsUserSettings 用于管理配置文件和将设置导入/导出到 XML 文件的接口。

(继承自 Package)
IVsUserSettings.ImportSettings(String, IVsSettingsReader, UInt32, Int32)

当用户在 IDE 的“工具”菜单上选择“导入/导出设置”功能的导入选项时,使用 Visual Studio 设置机制检索 VSPackage 的配置。 此方法是用于管理配置文件和将设置导入/导出到 XML 文件的接口实现 IVsUserSettings 的一部分。

(继承自 Package)
IVsUserSettingsMigration.MigrateSettings(IVsSettingsReader, IVsSettingsWriter, String)

从以前的版本迁移设置。

(继承自 Package)
IVsUserSettingsQuery.NeedExport(String, Int32)

确定设置是否已更改且应重新导出。

(继承自 Package)

扩展方法

ProfferService<TService>(IAsyncServiceContainer, Func<CancellationToken,Task<Object>>)

将指定类型实现的服务传递给异步服务容器。 首次查询服务时, creator 将调用 函数。 提供的服务将提升为父异步服务容器。

ProfferService<TService>(IAsyncServiceContainer, Func<CancellationToken,Task<Object>>, Boolean)

将指定类型实现的服务传递给异步服务容器。 首次查询服务时, creator 将调用 函数。

ProfferService<TService>(IAsyncServiceContainer, Func<Task<Object>>)

将指定类型实现的服务传递给异步服务容器。 首次查询服务时, creator 将调用 函数。 提供的服务将提升为父异步服务容器。

ProfferService<TService>(IAsyncServiceContainer, Func<Task<Object>>, Boolean)

将指定类型实现的服务传递给异步服务容器。 首次查询服务时, creator 将调用 函数。

QueryService(IServiceProvider, Guid)

获取服务提供程序基于其服务 GUID 公开的服务。

QueryService<TService>(IServiceProvider)

获取服务提供程序根据其服务类型公开的服务。

GetServiceAsync<TService,TInterface>(IAsyncServiceProvider)

从服务提供程序异步获取服务接口。

GetServiceAsync<TService,TInterface>(IAsyncServiceProvider, Boolean)

从服务提供程序异步获取服务接口。

适用于