美文网首页
winform利用反射运行窗体

winform利用反射运行窗体

作者: 黑哥聊dotNet | 来源:发表于2020-03-19 10:09 被阅读0次

今天想写个配置文件然后读取配置然后根据配置运行窗体

利用于反射Assembly.Load("程序集").CreateInstance("命名空间.类")

而不管在哪一层写这段代码其中的("程序集")读取的实际是web层bin文件夹下的dll,也就是说你反射的类的程序集dll在web层的bin下必须有注意CreateInstance()一定是命名空间.类名,否则创建的实例为空

Assembly.Load("程序集名")

Assembly.LoadFrom("程序集实际路径")

代码如下:

private void qpjButton1_BtnClick(object sender, EventArgs e)

        {

            string AssemblyName = "Test";//程序集,

            string path = "Test.Form2";//命名空间.类

            CreateForm(AssemblyName, path);

        }

        /// 打开新的子窗体

        /// </summary>

        /// <param name="strName">窗体的类名</param>

        /// <param name="AssemblyName">窗体所在类库的名称</param> 

        public static void CreateForm(string AssemblyName, string path)

        {

            Form doc = Assembly.Load(AssemblyName).CreateInstance(path) as Form;

            doc.ShowDialog();

        }

目录

相关文章

网友评论

      本文标题:winform利用反射运行窗体

      本文链接:https://www.haomeiwen.com/subject/fsjkyhtx.html