大哥.帮忙啊..关于'DLL方式封装MDI子窗体'

aalei 2008-08-20 12:20:02
我有个小公司.写写定制程序的
以前.我都是一个工程N个窗体

现在我想通过带窗体的DLL来模块化程序.也就是每个人写自己带窗体的功能模块.编译成DLL文件.
我主程序来调用这些DLL
调用是没问题.可每个DLL show出来的是独立的窗体..这样程序很不好看

看到DELPHI可以吧DLL的窗体变成MDI主窗体的子船体.而且完美

网上找不到VB.NET相关例子

跪求专家给个答复..或DEMO
帮助我公司在程序框架下.有大个进步
谢过了

完美解决.再送500分
...全文
135 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
superliu1122 2008-08-20
  • 打赏
  • 举报
回复
没有什么区别啊,窗体放在一个项目里和放在多个项目里调用方法一样的,只要定义成public就行了
rainbowsoftware 2008-08-20
  • 打赏
  • 举报
回复
同意楼上的
aalei 2008-08-20
  • 打赏
  • 举报
回复
就是想把子窗体封装在DLL里
供主程序调用
效果就是:完美模拟子窗体在MDI窗体下的效果(窗体的融合.菜单的融合等)
yagebu1983 2008-08-20
  • 打赏
  • 举报
回复
你先在一个工程下建两个项目,
一个是child项目,一个是mdi项目,
child项目放全是子窗体。
mdi项目是主窗体。

你在child项目下建多个窗体,
然后设置项目属性,应用程序--》输出类型---》类库!!
最后生成child项目,你可以在bin下找到child.dll。

然后引用到mdi项目!!
一下是简单代码,


private void Form1_Load(object sender, EventArgs e)
{
Form childFrm = new child.Form1();
childFrm.MdiParent = this;
childFrm.Show();
}
破咖啡罐子 2008-08-20
  • 打赏
  • 举报
回复
显示子窗体:
ChildForm.MdiParent = Me
ChildForm.WindowState = FormWindowState.Maximized
ChildForm.Show()

这个就是显示mid子窗体的代码啊,还要什么?
aalei 2008-08-20
  • 打赏
  • 举报
回复
...小弟愚钝...麻烦你给个DEMO.或是贴出代码....
我VB转过来的...NET的很多特性用法不太会
yagebu1983 2008-08-20
  • 打赏
  • 举报
回复
在生成窗体时,你把工程的输出类型改为类库!!
aalei 2008-08-20
  • 打赏
  • 举报
回复
啊..老大..DELPHI的我有.我要VB.NET的..
yagebu1983 2008-08-20
  • 打赏
  • 举报
回复
例子是delphi的!!
yagebu1983 2008-08-20
  • 打赏
  • 举报
回复
破咖啡罐子 2008-08-20
  • 打赏
  • 举报
回复
先设置一个主form,设置IsMidContainer属性为True
显示子窗体:
ChildForm.MdiParent = Me
ChildForm.WindowState = FormWindowState.Maximized
ChildForm.Show()
破咖啡罐子 2008-08-20
  • 打赏
  • 举报
回复
建立个类库,插入画面,编译成DLL即可。

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧