如何停止BringToFront()将用户控件移动到窗口的左上方?

时间:2018-07-27 14:16:53

标签: c# winforms bringtofront

我目前正在做一个小项目,使用用户控件调出窗口的不同窗口。单击侧栏时,BringToFront()将用户控件之一带到最前面。这通过代码使用用户控件的实例,该函数被调用到该实例。

SelectionPanel.Height = btnSideHome.Height;
this.Controls.Add(HomePage.Instance);
HomePage.Instance.BringToFront();

但是,在构建时,初始化窗口后调用HomePage.Instance.BringToFront()时,在public Form1()类中,HomePage用户控件实例化在窗口的左上方,而不是{{1 }},放在表单设计器中。

这里有什么问题,我该如何解决?

3 个答案:

答案 0 :(得分:2)

您可以简单地确保控件在调用 BringToFront 之前呈现在正确的位置 与以下内容。

    HomePage.Instance.Location = new Point(x, y); 

答案 1 :(得分:1)

我发现它是怎么做的。

我通过以下语句用坐标创建了一个新的Point实体

Point refpoint = new Point(200,61);

然后,当我想通过

将某物的位置设置为该参考点时,调用该参考点
HomePage.Instance.Location = refpoint;

这奏效了。

答案 2 :(得分:0)

有时会有一个Startlocation,您可以在打开表单之前将其设置为manual