C# 屏幕左上角的窗体开口
我想在父窗体的中心打开一个winform,它已经是一个mdiChild,即我无法在父窗体上设置为mdiContainer。下面是我使用的代码。我创建的表单总是在我指定给它的父对象的左上角打开,这很令人沮丧C# 屏幕左上角的窗体开口,c#,winforms,C#,Winforms,我想在父窗体的中心打开一个winform,它已经是一个mdiChild,即我无法在父窗体上设置为mdiContainer。下面是我使用的代码。我创建的表单总是在我指定给它的父对象的左上角打开,这很令人沮丧 loadingCircle = new Loading(Title); loadingCircle.TopLevel = false; loadingCircle.Parent = this; loadingCircle.Show
loadingCircle = new Loading(Title);
loadingCircle.TopLevel = false;
loadingCircle.Parent = this;
loadingCircle.Show();
loadingCircle.BringToFront();
我已在designer中将StartPosition切换到CenterParent,但它似乎没有任何作用
我错过了什么明显的东西吗?要进入屏幕中央 您可以使用:
loadingCircle.StartPosition = FormStartPosition.CenterScreen;
或:
loadingCircle.ShowDialog;
或尝试使用以下代码查找中心位置:
Form loadingCircle = new frmLoading();
loadingCircle.StartPosition = FormStartPosition.Manual;
loadingCircle.Location = new Point(this.Location.X + (this.Width - loadingCircle.Width) / 2, this.Location.Y + (this.Height - loadingCircle.Height) / 2);
loadingCircle.Show(this);
请看,我不想使用ShowDialog,因为我仍然希望用户能够与UI交互。还有其他的建议吗?我用了一个小小的变化,但它确实有效!loadingCircle=新的LoadingCirclerRegisterTitle;loadingCircle.TopLevel=false;loadingCircle.Parent=这个;Point startPosition=新点this.Parent.Width/2-加载循环.Width/2,this.Parent.Height/2-加载循环.Height/2;加载循环。位置=起始位置;loadingCircle.Show;加载循环。带向斜坡;