首页 / C# / c# winform 反射创建
c# winform 反射创建
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# winform 反射创建,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2051字,纯文字阅读大概需要3分钟。
内容图文
![c# winform 反射创建](/upload/InfoBanner/zyjiaocheng/850/a3ae8c1629994806852a4e45c7c898a9.jpg)
/// <summary>
/// /// <summary>
/// 反射操作打开子窗体
/// </summary>
/// </summary>
public class ReflectionHelper
{
/// <summary>
/// 打开新的子窗体
/// </summary>
/// <param name="strName">窗体的类名</param>
/// <param name="AssemblyName">窗体所在类库的名称</param>
/// <param name="MdiParentForm">父窗体</param>
public static void CreateForm(string strName, string AssemblyName, Form MdiParentForm)
{
int Index = strName.LastIndexOf(".");
string FormName = strName.Substring(23);
if (!ShowChildForm(FormName, MdiParentForm))
{
string path = AssemblyName;//项目的Assembly选项名称
string name = strName; //类的名字
Form doc = (Form)Assembly.Load(path).CreateInstance(name);
doc.WindowState = FormWindowState.Maximized;
doc.MdiParent = MdiParentForm;
doc.Show();
}
}
/// <summary>
/// 防止子窗体再度打开
/// </summary>
/// <param name="p_ChildrenFormText"></param>
/// <param name="MdiParentForm"></param>
/// <returns></returns>
public static bool ShowChildForm(string p_ChildrenFormText, Form MdiParentForm)
{
int i;
//依次检测当前窗体的子窗体
for (i = 0; i < MdiParentForm.MdiChildren.Length; i++)
{
//判断当前子窗体的Text属性值是否与传入的字符串值相同
if (MdiParentForm.MdiChildren[i].Name == p_ChildrenFormText)
{
//如果值相同则表示此子窗体为想要调用的子窗体,激活此子窗体并返回true值
MdiParentForm.MdiChildren[i].Activate();
return true;
}
}
//如果没有相同的值则表示要调用的子窗体还没有被打开,返回false值
return false;
}
}
ReflectionHelper.CreateForm("HuishengFS.UI.Systemer.FrmUsers", "HuishengFS.UI", this);
内容总结
以上是互联网集市为您收集整理的c# winform 反射创建全部内容,希望文章能够帮你解决c# winform 反射创建所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。