如何通过点击一个UserControl中的按钮来显示另一个UserControl?

问题描述 投票:2回答:1

我是一个非常新的编码,此刻我已经开始了一个Windows Form Application的个人项目。

我有一个带有几个按钮和一个面板的表单作为容器。在这个链接的帮助下,按钮按照预期加载了usercontrol。https:/www.youtube.comwatch?v=wZ63E_9ASwM

但是,在其中一个用户控件中,我有两个按钮,我想为每个按钮加载用户控件。我想为每个按钮加载用户控件。我不知道如何去使这个工作。我已经尝试使用与上述相同的方法,但没有成功。

我发现了另一个问题,问的是完全相同的事情,但对我来说没有任何意义。点击另一个UserControl上的按钮后动态加载UserControl。

我有一个关于usercontrol中的2个按钮的问题,如果一个usercontrol被加载到panelcontainer中,按钮会不会消失?如果usercontrol被加载到panelcontainer中,按钮是否会消失?

谁能解释一下,或者有什么更简单的方法让这个工作?

这是加载Usercontrol的按钮,在form1(cs)中有两个按钮。

private void Personbutton_Click(object sender, EventArgs e)
{
    panelSelection.Height = Personbutton.Height;
    panelSelection.Top = Personbutton.Top;

    if (!ContainerPanel.Controls.Contains(ucPerson.Instance))
    {
        ContainerPanel.Controls.Add(ucPerson.Instance);
        ucPerson.Instance.Dock = DockStyle.Fill;
        ucPerson.Instance.BringToFront();
    }
    else
        ucPerson.Instance.BringToFront();
}

这是加载到容器中的usercontrol。

private static ucPerson _instance;

public static ucPerson Instance
{
    get
    {
        if (_instance == null)
            _instance = new ucPerson();
        return _instance;
    }
}

当按下这些按钮时,我想加载另一个新的usercontrol。但又不能让按钮消失。

private void CPbutton_Click(object sender, EventArgs e)
{
    CPbutton.FlatAppearance.BorderSize = 1;
    APbutton.FlatAppearance.BorderSize = 0;
}

private void APbutton_Click(object sender, EventArgs e)
{
    APbutton.FlatAppearance.BorderSize = 1;
    CPbutton.FlatAppearance.BorderSize = 0;
}
c# winforms button user-controls
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.