我想在向Form添加用户控件后检查用户控件是否已停靠

时间:2011-12-06 11:02:46

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

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

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

现在它工作得很好.....  但当我通过选择项目将我的usercontrol添加到工具箱.... 然后拖放我的用户控件以形成... 如果用户控制是否对接,我现在在表单移动事件上有chk ......

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

private void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            Container_User_Control.Container1 obj = new Container_User_Control.Container1();
            if (obj.Dock != DockStyle.Left)
            {
               obj.visible=false;


            }
            else
            {

              obj.visible=true;

            }

        }

先谢谢....

1 个答案:

答案 0 :(得分:1)

我不知道你为什么要使用Mouse_Move事件但是如果我理解你的问题那么:

将UserControl从工具箱拖到窗体时,将在窗体设计器代码中创建usercontrol的实例。类似于Container_User_Control1,所以不要使用:

Container_User_Control.Container1 obj = new Container_User_Control.Container1();
if (obj.Dock != DockStyle.Left)
        {
            MessageBox.Show("none");
        }
        else
        {
            MessageBox.Show("left");
        }

使用:

        if (Container_User_Control1.Dock != DockStyle.Left)
        {
            MessageBox.Show("none");
        }
        else
        {
            MessageBox.Show("left");
        }