我想停靠用户控件

时间:2011-12-06 10:29:01

标签: c# winforms visual-studio-2010 user-controls

我已经进行了用户控制,并且内部用户控件分别使用两个按钮名称dock和close。

现在我想在我点击按钮停靠时将我的用户控件停靠在左边,当我点击按钮关闭时关闭我的用户控件..

(我试图通过制作用户控制对象来使用,但没有帮助.....)

void button1_Click(object sender, EventArgs e) {
    Container1 obj = new Container1();
    if (obj.Dock != DockStyle.None) {
        obj.Dock = DockStyle.None;
        MessageBox.Show("Dockstyle is None");
    }
    else {
        obj.Dock = DockStyle.Left;
        MessageBox.Show("Dockstyle is Left");
    }
}

2 个答案:

答案 0 :(得分:3)

obj需要是对现有userControl实例的引用(在您的情况下,为this关键字)。您在这里创建了一个新的而不是Container1

private void button1_Click(object sender, EventArgs e)
{
        if (this.Dock != DockStyle.None)
        {
            this.Dock = DockStyle.None;
            MessageBox.Show("Dockstyle is None");
        }
        else
        {
            this.Dock = DockStyle.Left;
            MessageBox.Show("Dockstyle is Left");
        }
}

答案 1 :(得分:0)

您不想创建容器,然后在该容器上设置DockStyle。相反,您需要设置DockStyle本身的UserControl