我正在编写一个简单的Windows窗体应用程序。 我希望该窗体仅在主屏幕中打开,而不管在哪个屏幕上调用了应用程序(假设用户有多个屏幕)。 主屏幕的目的是用于显示Windows任务栏的屏幕。
谢谢,Maor。
答案 0 :(得分:3)
您可以尝试以下方法:
/// <summary>
/// Sets the location of the form to primary screen.
/// </summary>
/// <param name="this">Instance of the form.</param>
/// <param name="x">The x coordinate of the form's location.</param>
/// <param name="y">The y coordinate of the form's location.</param>
public static void SetPrimaryLocation(this Form @this, int x = 0, int y = 0)
{
var rect = Screen.PrimaryScreen.WorkingArea;
@this.Location = new Point(rect.X + x, rect.Y + y);
}
答案 1 :(得分:-1)
您应将主窗体的IsMdiParent属性设置为yes。
当您显示其他表格时,您应该像这样显示它们:
private void MainForm_Load(object sender, EventArgs e)
{
Form2 frm = new Form2();
frm.MdiParent = this;
frm.Show();
}
这将在您的主窗体中打开Form2。