各人高人来看看,确实很急!!!!!!!关于主界面和DLL窗体的问题 在主界面有一个树形菜单,每个菜单对应一个DLL窗体,1.不知道如何动态的加入这个DLL,不是前期引用那种2.如果把主界面中的信息传入这个dll窗体中,比如用户名什么的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一、调用DLLDLL窗体是指的被封装到DLL里的窗体吧。我提供一个WM5下C#调mfc的DLL的例子:1、在类中,Import一个DLL文件(需要DLL文件的路径,推荐放到c#项目的bin目录下),紧接着声明可以显示DLL里窗体的函数。 [DllImport(@"MyDll.dll", CharSet = CharSet.Unicode)] private static extern void ShowDllForm(StringBuilder strIn,StringBuilder strOut);2、在某事件里,例如菜单的OnClick事件中,调用这个函数。下面例子是按钮click,供参考。 private void button2_Click(object sender, EventArgs e) { StringBuilder strIn = new StringBuilder(256); StringBuilder strOut = new StringBuilder(256); ShowDllForm(strIn,strOut); MessageBox.Show("output value: " + strOut.ToString()); }二、向DLL传入参数1、可以在调用上面ShowDllForm函数时传入参数,上面传入strIn。 1、反射2、创建时给参数,Activator.CreateInstance(Type type, params object[] args)别忘了强转成Control或者Form 可以参考下面最简单的代码来实现:Assembly assembly=Assembly.LoadFile(@"D:\CSharp\abc.dll");if (type != null){ Form frm = assembly.CreateInstance("typeName") as Form; if (frm != null) { frm.Show(this); }} OK,,也可以,,我的是[email protected],,在线等 asp.net mvc 的编码问题。。。 xml schema 能实现属性和元素相互约束吗? 窗体还原后,控件隐藏问题。 求助MSDN中关于C#异步SOCKET服务端示例的问题 求能匹配C语言注释的正则表达式 DataGridView 的固定的第一列怎么标志上数字? 内存泄漏的问题 点击一个按钮弹出一个div .Net最佳配置 无法从“ref System.Array”转换为“ref double[]”,怎么处理 500分求助!如何不安装OFFICE在程序中播放PPT,引用哪些组件? 都好几天了还不能解决怎么办??????????
DLL窗体是指的被封装到DLL里的窗体吧。
我提供一个WM5下C#调mfc的DLL的例子:
1、在类中,Import一个DLL文件(需要DLL文件的路径,推荐放到c#项目的bin目录下),紧接着声明可以显示DLL里窗体的函数。
[DllImport(@"MyDll.dll", CharSet = CharSet.Unicode)]
private static extern void ShowDllForm(StringBuilder strIn,StringBuilder strOut);2、在某事件里,例如菜单的OnClick事件中,调用这个函数。下面例子是按钮click,供参考。
private void button2_Click(object sender, EventArgs e)
{ StringBuilder strIn = new StringBuilder(256); StringBuilder strOut = new StringBuilder(256); ShowDllForm(strIn,strOut); MessageBox.Show("output value: " + strOut.ToString()); }
二、向DLL传入参数
1、可以在调用上面ShowDllForm函数时传入参数,上面传入strIn。
2、创建时给参数,Activator.CreateInstance(Type type, params object[] args)
别忘了强转成Control或者Form
if (type != null)
{
Form frm = assembly.CreateInstance("typeName") as Form;
if (frm != null)
{
frm.Show(this);
}
}