DialogPage 类
为实现 工具箱 属性表提供标准对话框的功能, 工具选项 页,使用 Visual Studio 设置结构,或自定义用户界面对话框中,使用 Visual Studio 自动化模型、 windows 窗体和状态持久性支持。
继承层次结构
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
Microsoft.VisualStudio.Shell.DialogPage
Microsoft.VisualStudio.Shell.UIElementDialogPage
命名空间: Microsoft.VisualStudio.Shell
程序集: Microsoft.VisualStudio.Shell.11.0(在 Microsoft.VisualStudio.Shell.11.0.dll 中)
语法
声明
<ComVisibleAttribute(True)> _
Public Class DialogPage _
Inherits Component _
Implements IWin32Window, IProfileManager
[ComVisibleAttribute(true)]
public class DialogPage : Component, IWin32Window,
IProfileManager
DialogPage 类型公开以下成员。
构造函数
名称 | 说明 | |
---|---|---|
DialogPage | 初始化 DialogPage 的新实例。 |
页首
属性
名称 | 说明 | |
---|---|---|
AutomationObject | 获取对话页类的特定实例 DTE 自动化模型对象。 | |
CanRaiseEvents | 获取一个指示组件是否可以引发事件的值。 (继承自 Component。) | |
Container | 获取 IContainer,它包含 Component。 (继承自 Component。) | |
DesignMode | 获取一个值,用以指示 Component 当前是否处于设计模式。 (继承自 Component。) | |
Events | 获取附加到此 Component 的事件处理程序的列表。 (继承自 Component。) | |
SettingsRegistryPath | 获取或设置子键在特定于版本的 Visual Studio 下支持存储设置数据。对话框页。 | |
Site | 获取或设置对话框页的网站。重写从继承 Component的实现。 (重写 Component.Site。) | |
Window | 获取用作对话框页的用户界面的窗口。 |
页首
方法
名称 | 说明 | |
---|---|---|
CreateObjRef | 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (继承自 MarshalByRefObject。) | |
Dispose() | 释放由 Component 使用的所有资源。 (继承自 Component。) | |
Dispose(Boolean) | 释放对话框页类使用的非托管资源和选择性地释放托管资源;父类, Component 支持非托管资源。 (重写 Component.Dispose(Boolean)。) | |
Equals | 确定指定的对象是否等于当前对象。 (继承自 Object。) | |
Finalize | 在通过垃圾回收将 Component 回收之前,释放非托管资源并执行其他清理操作。 (继承自 Component。) | |
GetHashCode | 用作特定类型的哈希函数。 (继承自 Object。) | |
GetLifetimeService | 检索控制此实例的生存期策略的当前生存期服务对象。 (继承自 MarshalByRefObject。) | |
GetService | 返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。 (继承自 Component。) | |
GetType | 获取当前实例的 Type。 (继承自 Object。) | |
InitializeLifetimeService | 获取控制此实例的生存期策略的生存期服务对象。 (继承自 MarshalByRefObject。) | |
LoadSettingsFromStorage | 调用 Visual Studio 从本地存储区加载对话框页的设置,通常注册表。 | |
LoadSettingsFromXml | 调用 Visual Studio 从 Visual Studio 设置存储加载对话框页上的设置在磁盘上。 | |
MemberwiseClone() | 创建当前 Object 的浅表副本。 (继承自 Object。) | |
MemberwiseClone(Boolean) | 创建当前 MarshalByRefObject 对象的浅表副本。 (继承自 MarshalByRefObject。) | |
OnActivate | 处理 windows 从 Visual Studio 环境的 Activate 消息。 | |
OnApply | 处理来自 Visual Studio 环境的 Apply 消息。 | |
OnClosed | 处理来自 Visual Studio 环境的 Close 消息。 | |
OnDeactivate | 处理来自 Visual Studio 环境的 Deactive 消息。 | |
ResetSettings | 应重写重置设置为其默认值。 | |
SaveSettingsToStorage | 调用由 Visual Studio 中存储对话框页上的设置在本地存储区,通常注册表。 | |
SaveSettingsToXml | 调用 Visual Studio 存储对话框页的设置为 Visual Studio 设置存储在磁盘上。 | |
ToString | 返回包含 Component 的名称的 String(如果有)。不应重写此方法。 (继承自 Component。) |
页首
事件
名称 | 说明 | |
---|---|---|
Disposed | 当通过调用 Dispose 方法释放组件时发生。 (继承自 Component。) |
页首
显式接口实现
名称 | 说明 | |
---|---|---|
IWin32Window.Handle | 获取对话页的窗口的句柄。 |
页首
备注
实现者说明
,在创建用户对话框、 工具选项 页或尤其是 工具箱 属性页时,请实现从 DialogPage 派生的类。
调用方的说明
DialogPage 的最简单的实现要求的公共属性只定义在实现类的。属性类型必须与字符串之间进行双向支持转换。 TypeConverter。
DialogPage 的基实现用于标准 windows 事件提供默认处理程序,并实现 Component、 IWin32Window和 IProfileManager。
从 DialogPage 派生的类包括以下内容:
自动为共享通过 Visual Studio 对自动化对象模型的元素支持。
,因为类继承 Component 接口实现, DialogPage 所有实例是自动化对象。
必须访问类使用自动化对象 AutomationObject 属性的应用程序。
默认情况下,,因为 DialogPage 的实现已经是自动化对象 AutomationObject 属性返回 this (在 Visual Basic的Me )。
DialogPage 实现可提供自动化对象除了本身外通过重写基 AutomationObject 实现。例如,这可以执行提供单独的用户界面和对象模型。
为 Visual Studio 设置 framework 支持,具体取决于派生类中的自动化对象的公共属性。
使用 ProvideProfileAttribute,对于从 DialogPage 派生的对象提供持久性,必须注册它。
从 DialogPage 派生类型继承 IProfileManager的一个默认持久性实现。
默认实现保存 dervied 类的自动化对象的所有公共属性,是对象由 AutomationObject 返回,并在字符串之间来回支持转换。 TypeConverter。
此行为可重写的 LoadSettingsFromXml、 SaveSettingsToXml、 LoadSettingsFromStorage和 SaveSettingsToStorage更改。
根据该派生类的自动化对象的公共属性的默认用户界面。
使用 ProvideOptionPageAttribute,对于提供对话框页的实现 工具选项 页,必须注册它。
使用 ProvideToolboxPageAttribute,对于提供对话框页的实现 工具箱 对话框页,必须注册它。
对话框页使用 Window 返回 IWin32Window,提供了窗口的句柄提供类的用户界面。
默认情况下,只有 Window 引用的窗口是属性网格中,由 PropertyGrid 实例实现通过选择自动化对象。
DialogPage 基类使用其 AutomationObject 的实现获取类的自动化对象和该自动化对象的公共属性。
对通过对话框页的用户界面进行的公共属性的更改由调用自动保存到本地存储区 (通常是注册表) 到 SaveSettingsToStorage 方法。
对话框页实现可以通过重写的 Window更改其用户界面。
说明 |
---|
通常,对话框中的页类的实例是其自身的自动化对象。因此,保存或中显示的属性是从 DialogPage派生的那些类。但是,因此,如果 AutomationObject 返回另一个对象,该对象是对象的属性,而是类的,保存或显示。 |
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
请参见
参考
Microsoft.VisualStudio.Shell 命名空间