当前位置: 移动技术网 > IT编程>开发语言>.net > C# 简单反射实现winform左侧树形导航,右侧切换内容

C# 简单反射实现winform左侧树形导航,右侧切换内容

2018年10月17日  | 移动技术网IT编程  | 我要评论

安闲自得的意思,风丫头动画片,醉欢颜

先看看效果:

 

核心代码:

using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
using system.reflection;

namespace winformdemo
{
    public partial class frmmain : form
    {
        public frmmain()
        {
            initializecomponent();
        }

        private void tvmenu_nodemousedoubleclick(object sender, treenodemouseclickeventargs e)
        {
            if (null != e.node.parent)
            {
                if (0 == e.node.nodes.count)
                {
                    showform(e.node.text);
                }
            }
        }

        private void showform(string strformname)
        {
            form frm = getform(strformname);
            frm.bringtofront();
            frm.show();
        }

        private form getform(string strformname)
        {
            control.controlcollection ctrls = pnlcentral.controls;
            if (ctrls.containskey(strformname))
            {
                return ctrls[strformname] as form;
            }
            else
            {
                assembly assembly = assembly.getexecutingassembly();
                type type = assembly.gettypes().where(item => item.name.equals(strformname)).firstordefault();
                
                form frm = assembly.createinstance(type.fullname) as form;
                frm.name = strformname;
                frm.toplevel = false;
                frm.dock = dockstyle.fill;
                frm.formborderstyle = system.windows.forms.formborderstyle.none;
                pnlcentral.controls.add(frm);

                return frm;
            }
        }
    }
}

以上就是frmmain主界面核心代码。以上代码没有进行优化,根据个人经验自己优化下。

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网