博客动态
Hi!欢迎来到Jerry Coding!公众号垃圾分类增加学习功能,关注下面的公众号一起来帮助Jerry学习更多垃圾分类知识吧!
微信扫码

扫一扫关注我

More
关于
New
RSS

C# winform 使用 panel 实现动态加载

2020年5月19日 Jerry 612 2020年5月19日

C# winform 使用 panel 实现动态加载,仿微信客户端:点击按钮切换功能界面。

刚开始想的是用tabcontrol 来实现,只需要把tabcontrol 横过来就行了,后来想了想还可以用panel+button来动态加载。

在winform创建几个按钮和几个panel,我这里搞了两个,里面分别包含不同的控件。

这里有个常遇到的问题,就是panel绘制的时候经常容易嵌套,比如panel1完成了,再来panel2的时候,一拖动可能就被拖进了panel1,其实我们想要的是两者并列的关系。

这里百度查到了一个解决小方法,就是点击 视图--其他视图--文档大纲,这样能看到所有控件的关系。

并列关系就把panel2挪到和panel1并列的父节点下面就行了。

panel绘制好了,接下来就完成按钮点击函数就行了,代码很简单:点击聊天按钮,使panel1显示,panel2不显示。点击好友按钮,使panel2显示,panel1不显示。

private void button14_Click(object sender, EventArgs e)
{
    Console.WriteLine(panel1.Visible);
    
    panel1.Visible = true;
    panel2.Visible = false;
}

private void button15_Click(object sender, EventArgs e)
{
    panel2.Visible = true;
    panel1.Visible = false;
    panel2.BringToFront();
    panel2.Location = panel1.Location;//让位置相等
}

panel2.BringToFront();     //可以使panel2置顶显示

panel2.Location = panel1.Location;    //让panel2位置和panel1相同,在原先位置生成。

最后的效果:


原创文章,转载请注明出处: https://jerrycoding.com/article/winform-panel

微信
支付宝

您尚未登录,暂时无法评论。请先 登录 或者 注册

0 人参与 | 0 条评论

每日一句 (From ONE)
真正重要的那种自由,意味着专注、自觉、自律、不懈努力,以及真诚的关怀他人,并且每天都以无数琐碎微小而乏味的方式,一次又一次地为他人牺牲奉献。这便是真正的自由。这便是学习如何去思考。
微信扫码

扫一扫关注我

关于本站