WPF 引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常 解决办法

本章讲述:引发类型为"System.Windows.Forms.AxHost+InvalidActiveXStateException"的异常 解决办法。

这几天在做一个WPF功能时,因为引用了第三方的OCX控件,一般来说一个对象只要实例化就行了, 但是在引用这个控件时就报引发类型为"System.Windows.Forms.AxHost + InvalidActiveXStateException"的异常。

经过网上一顿查询,最后得出原因:出现该异常,多是引用第三方控件引起的,使用这种控件除了实例化,还要初始化该对象。

解决方法:

cs 复制代码
//初始化控件
控件  对象 = new 控件();
//实例化该对象
((System.ComponentModel.ISupportInitialize)(this.对象)).BeginInit();
this.Controls.Add(对象);
((System.ComponentModel.ISupportInitialize)(this.对象)).EndInit();

例如:

cs 复制代码
AxMxDrawX axMxDrawX = new AxMxDrawX();
//开始初始化控件对象
 ((System.ComponentModel.ISupportInitialize)axMxDrawX).BeginInit();
// 创建 host 对象
System.Windows.Forms.Integration.WindowsFormsHost host = new System.Windows.Forms.Integration.WindowsFormsHost() { Child = axMxDrawX };
// 结束初始化
 ((System.ComponentModel.ISupportInitialize)axMxDrawX).EndInit();

相关推荐
tadus_zeng7 小时前
Windows C++ 排查死锁
c++·windows
EverestVIP7 小时前
VS中动态库(外部库)导出与使用
开发语言·c++·windows
抛物线.11 小时前
inhibitor_tool
windows
huizhixue-IT11 小时前
华为存储考试内容&HCIP-Storage
wpf
宋冠巡11 小时前
Windows安装Docker(Docker Desktop)
windows·docker·容器
淬渊阁12 小时前
windows技术基础知识
windows
niandb19 小时前
The Rust Programming Language 学习 (九)
windows·rust
virelin_Y.lin1 天前
系统与网络安全------Windows系统安全(1)
windows·安全·web安全·系统安全
电星托马斯1 天前
C++中顺序容器vector、list和deque的使用方法
linux·c语言·c++·windows·笔记·学习·程序人生
麻芝汤圆1 天前
使用 MapReduce 进行高效数据清洗:从理论到实践
大数据·linux·服务器·网络·数据库·windows·mapreduce