C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部
这是最近在做的一个项目中提到的需求,把一个现有的窗体应用程序界面嵌入到自己开发的窗体中来,看起来就像自己开发的一样(实际上……跟自己开发的还是有一点点区别的,就是内嵌程序和宿主程序的窗口激活状态问题)。
在codeproject找到了一篇相关的文章(http://www.codeproject.com/Articles/9123/Hosting-EXE-Applications-in-a-WinForm-project),虽然可用,但是很不方便,于是重新设计编写了一个类库,用一个控件完成内嵌其它应用程序的功能。
直接上图先:
?
?
?
从打开Adobe Reader那张图片可以看出来所谓的“内嵌程序和宿主程序的窗口激活状态问题”。当内嵌程序窗口激活时,表面上将其包裹起来的宿主窗口却处于非激活的状态。想隐藏这一点的话,把窗口的FormBorderStyle属性设为None吧,然后自己在窗口上画关闭、最大化、最小化按钮好了。
?
原作者的实现思路更能暴露本质,所以这里用原作者的代码段解释一下实现过程。
1、启动要嵌入的应用程序进程
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
-
请教c#怎么读取 *sql文件中的存储过程,并运行
-
怎么使用.Net技术设计一个能够承载大数据量高并发的架构
-
BOOL BitBlt(HDC hdcDest,int nXDest,int nYDest,int nWidth,int nHeight,HDC hdcSrc,int nXSrc,int nYSrc,DWORD dwRop)最后一个参数有关问题
-
CSDN来,难道都是初学者
-
难!使用Office Outlook 发送邮件时附带了附件winmail.dat(内包含几个小标签),但是在其他机器用Office Outlook 时邮件正文内容却没有解决办法
-
刚结了帖,心情很爽现在,湖南的兄弟姐妹进来再接分解决方法
-
为什么小弟我visual studio中的说明都是英文的
-
请大家支持小弟我的论坛 代码路上 http://www.codes63.net
-
Yii Framework 开发课程(15) UI 组件 MultiFileUpload示例
-
关于一个网页的实时监控有关问题
-
怎样在虚拟机上安装MAC 系统呀?请大家帮助一下
-
c#将对象序列化作字符串和将字符串反序列化为对象
-
小妹求问:TCPClient实时接收字符串有关问题
-
vs2010神秘有关问题
-
wpf的好处,该如何处理
-
[文档]概要设计说明书(GB8567——88)-功能器求与程序
-
WinForm用户自定义控件的有关问题
-
zedgraph的图片输出格式如何设置成png
-
c#获取外部程序的某个按钮句柄并触发点击事件?该怎么处理
-
抢救~