在C#中移动没有边框的表单?

在C#中移动没有边框的表单?,c#,visual-c#-express-2010,C#,Visual C# Express 2010,可能重复: 好的,我已经做了一个表单,里面有一个控件。形式是无边界的。表单中的控件称为navigationPanel1。我希望能够在控件上单击并拖动以移动表单。我该怎么做?您必须订阅鼠标下移、鼠标上移和鼠标移动事件。在鼠标移动中,您将表单的位置设置为新位置(您必须计算该位置)。如果鼠标按钮按下(保存此状态),则只应执行鼠标移动中的代码。为此在网上加载了源代码,并提供了工作示例:@CodeCaster我可以向您保证,这是我关于此主题的第一篇文章。@AdamHouldsworth这不是dupli

可能重复:


好的,我已经做了一个表单,里面有一个控件。形式是无边界的。表单中的控件称为navigationPanel1。我希望能够在控件上单击并拖动以移动表单。我该怎么做?

您必须订阅鼠标下移、鼠标上移和鼠标移动事件。在鼠标移动中,您将表单的位置设置为新位置(您必须计算该位置)。如果鼠标按钮按下(保存此状态),则只应执行鼠标移动中的代码。

为此在网上加载了源代码,并提供了工作示例:@CodeCaster我可以向您保证,这是我关于此主题的第一篇文章。@AdamHouldsworth这不是duplicate@EliteGamer副本是由其他人提出的问题。当你在中提出问题时,网站会搜索你,以帮助你避免再次提出同样的问题。在这种情况下,副本通常不是来自同一个人。@Adamhuldsworth噢。。。我很抱歉,虽然这在某些情况下可能会起作用,但在其他情况下会出现故障,例如,如果您从最上面的像素向上拖动窗体,则不会出现MouseMove事件,因此不会发生移动。如果移动鼠标的速度足够快,使指针在窗体外一段时间,也会发生同样的情况。让窗口管理器做它自己的事情要好得多。