我正在尝试将我的父窗体置于屏幕顶部,但它只显示中心屏幕和中心父级,并且它们都不在屏幕顶部。 当我尝试使用Google时,它为我提供了大量包含最顶层的结果,但我对最顶层的功能没有兴趣,我希望它在屏幕顶部,如在位置0,而不是在所有窗口上方,我无法找到正确的参数。
有没有人遇到过这种方法?
答案 0 :(得分:1)
您需要使用Location
的{{1}}属性。
这是一个简单的示例,将表单转换为Form
:
Y = 0
编辑:以下是一个示例,确保表单也集中在屏幕顶部。
void Form1_Load( object sender, EventArgs e )
{
this.Location = new Point( this.Location.X, 0 );
}
注意:强>
void Form1_Load( object sender, EventArgs e )
{
int x = (Screen.PrimaryScreen.Bounds.Width - this.Width) / 2;
this.Location = new Point( x, 0 );
}
和C++
,它们不混合。答案 1 :(得分:0)
这是一种方法:
public static class FormExtensions
{
public static void CentreTop(this Form form)
{
form.Location = new Point((Screen.PrimaryScreen.Bounds.Width - form.Width) / 2, 0);
}
}
并在上下文中使用:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.StartPosition = FormStartPosition.Manual;
this.Resize += Reposition;
this.Move += Reposition;
}
private void Reposition(object sender, EventArgs e)
{
this.CentreTop();
}
}
如果您不想总是使用PrimaryScreen
,您可能想要添加一些关于哪个屏幕居中的逻辑。