AxHost 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包装 ActiveX 控件,并将它们作为功能完整的 Windows 窗体控件公开。
public ref class AxHost abstract : System::Windows::Forms::Control, System::ComponentModel::ICustomTypeDescriptor, System::ComponentModel::ISupportInitialize
public abstract class AxHost : System.Windows.Forms.Control, System.ComponentModel.ICustomTypeDescriptor, System.ComponentModel.ISupportInitialize
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class AxHost : System.Windows.Forms.Control, System.ComponentModel.ICustomTypeDescriptor, System.ComponentModel.ISupportInitialize
type AxHost = class
inherit Control
interface ISupportInitialize
interface ICustomTypeDescriptor
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AxHost = class
inherit Control
interface ISupportInitialize
interface ICustomTypeDescriptor
Public MustInherit Class AxHost
Inherits Control
Implements ICustomTypeDescriptor, ISupportInitialize
- 继承
- 属性
- 实现
示例
下面的代码示例重写包装 Microsoft 掩码编辑 ActiveX 控件的派生类的 AxHost构造函数和 SetAboutBoxDelegate 和 AttachInterfaces 方法。 此代码要求你已通过在具有 开关的 MSMask32.ocx 文件 /source
上运行 AxImp.exe 工具来生成源代码。 此代码仅以 C# 语法显示,因为这是 AxImp.exe 工具唯一的语言输出。
public AxMaskEdBox()
:
base("c932ba85-4374-101b-a56c-00aa003668dc") // The ActiveX control's class identifier.
{
// Make the AboutBox method the about box delegate.
this.SetAboutBoxDelegate(new AboutBoxDelegate(AboutBox));
}
public virtual void AboutBox()
{
// If the instance of the ActiveX control is null when the AboutBox method
// is called, raise an InvalidActiveXStateException exception.
if ((this.ocx == null))
{
throw new System.Windows.Forms.AxHost.InvalidActiveXStateException(
"AboutBox", System.Windows.Forms.AxHost.ActiveXInvokeKind.MethodInvoke);
}
// Show the about box if the ActiveX control has one.
if (this.HasAboutBox)
{
this.ocx.AboutBox();
}
}
protected override void AttachInterfaces()
{
try
{
// Attach the IMSMask interface to the ActiveX control.
this.ocx = ((MSMask.IMSMask)(this.GetOcx()));
}
catch (System.Exception ex)
{
System.Console.WriteLine(ex.Message);
}
}
注解
通常不直接使用 AxHost 类。 可以使用 Aximp.exe (Windows 窗体 ActiveX 控件导入程序) 生成扩展 AxHost的包装。
ActiveX 控件导入程序生成一个派生自 AxHost 类的类,并将其编译为库文件, (DLL) 可以添加为对应用程序的引用。 或者,可以将 开关与 ActiveX 控件导入程序配合使用 /source
,并为 AxHost 派生类生成 C# 文件。 然后,可以更改代码并将其重新编译到库文件中。
注意
如果 ActiveX 控件的成员的名称与 .NET Framework 中定义的名称匹配,则 ActiveX 控件导入程序在创建 AxHost 派生类时会为成员名称添加“Ctl”前缀。 例如,如果 ActiveX 控件有一个名为“Layout”的成员,则它在派生类中 AxHost 重命名为“CtlLayout”,因为 Layout
事件是在 .NET Framework 中定义的。
类的大多数常见属性 AxHost 仅在基础 ActiveX 控件公开这些属性时才有效且使用。 常见属性的一些示例包括 BackColor、 Cursor、 Font和 Text。
注意
如果使用 Visual Studio 作为 Windows 窗体设计环境,可以通过将 ActiveX 控件添加到工具箱,使 ActiveX 控件可用于应用程序。 为此,请右键单击 “工具箱”,选择“ 自定义工具箱”,然后浏览到 ActiveX 控件的 .ocx 文件。 有关详细信息,请参阅如何:向 Windows 窗体添加 ActiveX 控件。
构造函数
AxHost(String) |
初始化 AxHost 类的新实例,包装由指定的 CLSID 指示的 ActiveX 控件。 |
AxHost(String, Int32) |
初始化 AxHost 类的新实例,包装由指定的 CLSID 指示的 ActiveX 控件,并使用由指定的 |
属性
AccessibilityObject |
获取分配给该控件的 AccessibleObject。 (继承自 Control) |
AccessibleDefaultActionDescription |
获取或设置控件的默认操作说明以供具有辅助功能的客户端应用程序使用。 (继承自 Control) |
AccessibleDescription |
获取或设置辅助功能客户端应用程序使用的控件说明。 (继承自 Control) |
AccessibleName |
获取或设置辅助功能客户端应用程序所使用的控件名称。 (继承自 Control) |
AccessibleRole |
获取或设置控件的辅助性角色。 (继承自 Control) |
AllowDrop |
获取或设置一个值,该值指示控件是否可以接受用户拖放到它上面的数据。 (继承自 Control) |
Anchor |
获取或设置控件绑定到的容器的边缘并确定控件如何随其父级一起调整大小。 (继承自 Control) |
AutoScrollOffset |
获取或设置一个值,该值指示在 ScrollControlIntoView(Control) 中将控件滚动到何处。 (继承自 Control) |
AutoSize |
此属性与此类无关。 (继承自 Control) |
BackColor |
此成员对于此控件无意义。 |
BackgroundImage |
此属性与此类无关。 |
BackgroundImageLayout |
此属性与此类无关。 |
BackgroundImageLayout |
获取或设置在 ImageLayout 枚举中定义的背景图像布局。 (继承自 Control) |
BindingContext |
获取或设置控件的 BindingContext。 (继承自 Control) |
Bottom |
获取控件下边缘与其容器的工作区上边缘之间的距离(以像素为单位)。 (继承自 Control) |
Bounds |
获取或设置控件(包括其非工作区元素)相对于其父控件的大小和位置(以像素为单位)。 (继承自 Control) |
CanEnableIme |
获取一个用以指示是否可以将 ImeMode 属性设置为活动值的值,以启用 IME 支持。 (继承自 Control) |
CanFocus |
获取一个值,该值指示控件是否可以接收焦点。 (继承自 Control) |
CanRaiseEvents |
确定是否可以在控件上引发事件。 (继承自 Control) |
CanSelect |
获取一个值,该值指示是否可以选中控件。 (继承自 Control) |
Capture |
获取或设置一个值,该值指示控件是否已捕获鼠标。 (继承自 Control) |
CausesValidation |
获取或设置一个值,该值指示控件是否会引起在任何需要在接收焦点时执行验证的控件上执行验证。 (继承自 Control) |
ClientRectangle |
获取表示控件的工作区的矩形。 (继承自 Control) |
ClientSize |
获取或设置控件的工作区的高度和宽度。 (继承自 Control) |
CompanyName |
获取包含控件的应用程序的公司名称或创建者。 (继承自 Control) |
Container |
获取包含 IContainer 的 Component。 (继承自 Component) |
ContainingControl |
获取或设置包含 ActiveX 控件的控件。 |
ContainsFocus |
获取一个值,该值指示控件或它的一个子控件当前是否有输入焦点。 (继承自 Control) |
ContextMenu |
此属性与此类无关。 |
ContextMenu |
获取或设置与控件关联的快捷菜单。 (继承自 Control) |
ContextMenuStrip |
获取或设置与此控件关联的 ContextMenuStrip。 (继承自 Control) |
Controls |
获取包含在控件内的控件的集合。 (继承自 Control) |
Created |
获取一个值,该值指示控件是否已经创建。 (继承自 Control) |
CreateParams |
获取创建控件句柄时所需要的创建参数。 |
Cursor |
此属性与此类无关。 |
DataBindings |
为该控件获取数据绑定。 (继承自 Control) |
DataContext |
获取或设置用于数据绑定的数据上下文。 这是一个环境属性。 (继承自 Control) |
DefaultCursor |
获取或设置控件的默认光标。 (继承自 Control) |
DefaultImeMode |
获取控件支持的默认输入法编辑器 (IME) 模式。 (继承自 Control) |
DefaultMargin |
获取控件之间默认指定的间距(以像素为单位)。 (继承自 Control) |
DefaultMaximumSize |
获取以像素为单位的长度和高度,此长度和高度被指定为控件的默认最大大小。 (继承自 Control) |
DefaultMinimumSize |
获取以像素为单位的长度和高度,此长度和高度被指定为控件的默认最小大小。 (继承自 Control) |
DefaultPadding |
获取控件内容的默认内部间距(以像素为单位)。 (继承自 Control) |
DefaultSize |
获取控件的默认大小。 |
DesignMode |
获取一个值,用以指示 Component 当前是否处于设计模式。 (继承自 Component) |
DeviceDpi |
获取显示当前控件的显示设备的 DPI 值。 (继承自 Control) |
DisplayRectangle |
获取表示控件的显示区域的矩形。 (继承自 Control) |
Disposing |
获取一个值,该值指示 Control 基类是否在释放进程中。 (继承自 Control) |
Dock |
获取或设置哪些控件边框停靠到其父控件并确定控件如何随其父级一起调整大小。 (继承自 Control) |
DoubleBuffered |
获取或设置一个值,该值指示此控件是否应使用辅助缓冲区重绘其图面,以减少或避免闪烁。 (继承自 Control) |
EditMode |
返回一个值,该值指示承载的控件是否处于编辑模式。 |
Enabled |
此属性与此类无关。 |
Events |
获取附加到此 Component 的事件处理程序的列表。 (继承自 Component) |
Focused |
获取一个值,该值指示控件是否有输入焦点。 (继承自 Control) |
Font |
此属性与此类无关。 |
FontHeight |
获取或设置控件的字体的高度。 (继承自 Control) |
ForeColor |
此属性与此类无关。 |
Handle |
获取控件绑定到的窗口句柄。 (继承自 Control) |
HasAboutBox |
获取一个值,该值指示 ActiveX 控件是否拥有“关于”对话框。 |
HasChildren |
获取一个值,该值指示控件是否包含一个或多个子控件。 (继承自 Control) |
Height |
获取或设置控件的高度。 (继承自 Control) |
ImeMode |
此属性与此类无关。 |
ImeMode |
获取或设置控件的输入法编辑器 (IME) 模式。 (继承自 Control) |
ImeModeBase |
获取或设置控件的 IME 模式。 (继承自 Control) |
InvokeRequired |
获取一个值,该值指示调用方在对控件进行方法调用时是否必须调用 Invoke 方法,因为调用方位于创建控件所在的线程以外的线程中。 (继承自 Control) |
IsAccessible |
获取或设置一个值,该值指示控件对辅助功能应用程序是否可见。 (继承自 Control) |
IsAncestorSiteInDesignMode |
指示此控件的上级之一是否位于 DesignMode 中。 此属性为只读。 (继承自 Control) |
IsDisposed |
获取一个值,该值指示控件是否已经被释放。 (继承自 Control) |
IsHandleCreated |
获取一个值,该值指示控件是否有与它关联的句柄。 (继承自 Control) |
IsMirrored |
获取一个值,该值指示此控件是否为镜像控件。 (继承自 Control) |
LayoutEngine |
获取控件的布局引擎的缓存实例。 (继承自 Control) |
Left |
获取或设置控件左边缘与其容器的工作区左边缘之间的距离(以像素为单位)。 (继承自 Control) |
Location |
获取或设置该控件的左上角相对于其容器的左上角的坐标。 (继承自 Control) |
Margin |
获取或设置控件之间的空间。 (继承自 Control) |
MaximumSize |
获取或设置大小,该大小是 GetPreferredSize(Size) 可以指定的上限。 (继承自 Control) |
MinimumSize |
获取或设置大小,该大小是 GetPreferredSize(Size) 可以指定的下限。 (继承自 Control) |
Name |
获取或设置控件的名称。 (继承自 Control) |
OcxState |
获取或设置 ActiveX 控件的持久状态。 |
Padding |
获取或设置控件内的空白。 (继承自 Control) |
Parent |
获取或设置控件的父容器。 (继承自 Control) |
PreferredSize |
获取可以容纳控件的矩形区域的大小。 (继承自 Control) |
ProductName |
获取包含控件的程序集的产品名称。 (继承自 Control) |
ProductVersion |
获取包含控件的程序集的版本。 (继承自 Control) |
RecreatingHandle |
获取一个值,该值指示控件当前是否在重新创建其句柄。 (继承自 Control) |
Region |
获取或设置与控件关联的窗口区域。 (继承自 Control) |
RenderRightToLeft |
已过时.
已过时.
此属性现已过时。 (继承自 Control) |
ResizeRedraw |
获取或设置一个值,该值指示控件在调整大小时是否重绘自己。 (继承自 Control) |
Right |
获取控件右边缘与其容器的工作区左边缘之间的距离(以像素为单位)。 (继承自 Control) |
RightToLeft |
此属性与此类无关。 |
ScaleChildren |
获取一个值,该值确定子控件的缩放。 (继承自 Control) |
ShowFocusCues |
获取一个值,该值指示控件是否应显示聚焦框。 (继承自 Control) |
ShowKeyboardCues |
获取一个值,该值指示用户界面是否处于适当的状态以显示或隐藏键盘快捷键。 (继承自 Control) |
Site |
获取或设置控件的站点。 |
Size |
获取或设置控件的高度和宽度。 (继承自 Control) |
TabIndex |
获取或设置控件在其容器内的 Tab 键顺序。 (继承自 Control) |
TabStop |
获取或设置一个值,该值指示用户能否使用 Tab 键将焦点放到该控件上。 (继承自 Control) |
Tag |
获取或设置包含有关控件的数据的对象。 (继承自 Control) |
Text |
此属性与此类无关。 |
Top |
获取或设置控件上边缘与其容器的工作区上边缘之间的距离(以像素为单位)。 (继承自 Control) |
TopLevelControl |
获取没有另一个 Windows 窗体控件作为其父级的父控件。 通常,这是控件所在的最外面的 Form。 (继承自 Control) |
UseWaitCursor |
获取或设置一个值,该值指示是否将等待光标用于当前控件以及所有子控件。 (继承自 Control) |
Visible |
获取或设置一个值,该值指示是否显示该控件及其所有子控件。 (继承自 Control) |
Width |
获取或设置控件的宽度。 (继承自 Control) |
WindowTarget |
此属性与此类无关。 (继承自 Control) |
方法
事件
显式接口实现
ICustomTypeDescriptor.GetAttributes() |
返回当前对象的 Attribute 类型集合。 |
ICustomTypeDescriptor.GetClassName() |
返回当前对象的类名。 |
ICustomTypeDescriptor.GetComponentName() |
返回当前对象的名称。 |
ICustomTypeDescriptor.GetConverter() |
返回当前对象的类型转换器。 |
ICustomTypeDescriptor.GetDefaultEvent() |
返回当前对象的默认事件。 |
ICustomTypeDescriptor.GetDefaultProperty() |
返回当前对象的默认属性。 |
ICustomTypeDescriptor.GetEditor(Type) |
返回当前对象的指定类型的编辑器。 |
ICustomTypeDescriptor.GetEvents() |
返回当前对象的事件。 |
ICustomTypeDescriptor.GetEvents(Attribute[]) |
使用指定的特性数组作为筛选器返回当前对象的事件。 |
ICustomTypeDescriptor.GetProperties() |
返回当前对象的属性。 |
ICustomTypeDescriptor.GetProperties(Attribute[]) |
使用指定的特性数组作为筛选器,返回当前对象的属性。 |
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor) |
返回拥有指定值的对象。 |
IDropTarget.OnDragDrop(DragEventArgs) |
引发 DragDrop 事件。 (继承自 Control) |
IDropTarget.OnDragEnter(DragEventArgs) |
引发 DragEnter 事件。 (继承自 Control) |
IDropTarget.OnDragLeave(EventArgs) |
引发 DragLeave 事件。 (继承自 Control) |
IDropTarget.OnDragOver(DragEventArgs) |
引发 DragOver 事件。 (继承自 Control) |