c#在窗体内的窗体之间切换,就像在MSN中一样



我记得MSN Messenger曾经显示登录。登录后,它会显示一个加载动画。如果成功,它将显示您的所有联系人。

这是怎么做到的?

我不知道如何创建新的窗体,或者在窗体中显示窗体。但事实并非如此,对吧?


我愿意听取关于如何改进我的问题的建议。我知道我几乎无法解释。也许在您的帮助下,我可以修改我的问题,使之对别人更有帮助。

您可以使用UserControl对象。您可以将它们停靠到主窗体中的面板上。

这个例子使用了一个Panel对象在主表单中进行对接(名为pnlCentre)。

public partial class MainForm : Form
{
    DummyControl1 dummy1;
    DummyControl2 dummy2;
    public MainForm()
    {
        InitializeComponent();

        dummy1 = new DummyControl1();
        dummy2 = new DummyControl2();
        pnlCentre.Controls.Add(dummy1);
        pnlCentre.Dock = DockStyle.Fill;
    }
    // switches between screens
    public void switchscreen()
    {
        pnlCentre.Controls.Remove(dummy1);
        pnlCentre.Controls.Add(dummy2);
        pnlCentre.Dock = DockStyle.Fill;
    }
}
public partial class DummyControl1 : UserControl
{
    // can be filled from the designer
}
public partial class DummyControl2 : UserControl
{
    // can be filled from the designer
}

最新更新