Winform 桌面应用使用vb(.ocx)ActiveX
在.net中使用ocx控件(vb),桌面程序的主界面 上把控件Mar(需要使用的)从工具箱拖到界面上,引用里自动添加2个命名空间在Designer.cs文件里有个实例对象 private AxMar.AxCtrl ax1;
现在,需要把三个ActiveX 控件A,B,C简单的封装,他们干的事儿差不多,比如初始化Init方法
A:void Init()
B:bool Init(ref string error)
C:bool InitCtrl()
这样,我只需要写个方法bool Init(string error) 就行了。
问题是,我不想把ActiveX 加载到主界面上,自己去new对象,可是老抛异常,引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常。
跟踪发现,自己手动写代码new 对象是不对的,把ActiveX控件拖界面上实例化一个对象OO,使用00调用控件里面的方法就可以。为什么?
是否可以自己写代码调用控件ActiveX 里面的方法,不加载到主界面?
现在,需要把三个ActiveX 控件A,B,C简单的封装,他们干的事儿差不多,比如初始化Init方法
A:void Init()
B:bool Init(ref string error)
C:bool InitCtrl()
这样,我只需要写个方法bool Init(string error) 就行了。
问题是,我不想把ActiveX 加载到主界面上,自己去new对象,可是老抛异常,引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常。
跟踪发现,自己手动写代码new 对象是不对的,把ActiveX控件拖界面上实例化一个对象OO,使用00调用控件里面的方法就可以。为什么?
是否可以自己写代码调用控件ActiveX 里面的方法,不加载到主界面?
...全文
相关推荐
dsoframer_v2.3.0.2.ocx
DSOFramer_v2.3.0.2.ocx是该控件的版本,ocx是ActiveX控件的扩展名,表明这是一个基于COM(Component Object Model)组件的控件,可以在多种编程语言中使用
WinForm调用OFFICE插件
总的来说,WinForm调用OFFICE插件`DsoFramer`涉及到了Windows桌面应用开发、COM组件、ActiveX技术、接口编程等多个方面。
c#开发,winform中嵌入office,使用到DSO Framer。
在C#开发Windows桌面应用程序(Winform)时,有时我们需要在应用中内嵌Office组件,以便用户可以直接在界面上编辑和查看Office文档。
C#编写web页面ActiveX控件
尽管传统的开发方式多使用C++或VB来构建ActiveX控件,但随着.NET框架的发展,使用C#开发此类控件已成为一种可行且高效的方法。
封装的TEXTBOX控件
ActiveX控件可以被嵌入到支持COM的任何应用程序中,如Visual Basic、VB.NET、VC++等,开发者可以通过引用这个控件快速地在自己的应用中实现高级的文本输入功能。


分析与设计
