gpt4 book ai didi

c# - 如何为 mdi 容器创建函数

转载 作者:太空宇宙 更新时间:2023-11-03 18:40:11 26 4
gpt4 key购买 nike

如何为我的以下代码创建一个函数,这样我就不必编写以下整个代码来使表单用作 MDICHILD 表单。

Students stu = null;
private void studentsToolStripMenuItem1_Click(object sender, EventArgs e)
{
if (stu == null || stu.IsDisposed)
{
stu = new Students();
stu.MdiParent = this;
stu.Show();
}
else
{
stu.Activate();
}
}

最佳答案

您的代码没有任何问题。你可以通过一些反射(reflection)让它变干:

    public Form CreateMdiChild(Type type, bool singleton) {
if (singleton) {
foreach (var child in this.MdiChildren) {
if (child.GetType() == type) {
child.WindowState = FormWindowState.Normal;
child.Show();
child.Activate();
return child;
}
}
}
Form form = (Form)Activator.CreateInstance(type);
form.MdiParent = this;
form.Show();
return form;
}

用法:

 CreateMdiChild(typeof(Students), true);

关于c# - 如何为 mdi 容器创建函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9758552/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com