将图片框增长到顶部方向

Grow picturebox to top direction

是否可以给图片框一个新的尺寸,但我希望它长大并正确,而不是让它向下和正确。所以基本上我希望左下角一直锁定在同一个位置。

正如您在图片中看到的那样,我希望绿色框在线上方。 我试图制作一个公式来计算新位置,但无法弄清楚如何写它。

如果您在 运行 时分配大小,例如:

private void button1_Click(object sender, EventArgs e)
{
    this.pictureBox1.Size = new Size( 200, 200 );
}

然后处理 PictureBox Resize 事件:

private void pictureBox1_Resize(object sender, EventArgs e)
{
    var padding = 12; //Forms designer snap-to padding.
    var titleBarHeight = 41;

    this.pictureBox1.Location = new Point(padding, this.Height - this.pictureBox1.Height - titleBarHeight - padding);
}

这将处理大小分配,以及如果您已锚定 PictureBox 并正在调整表单大小。

如果您只是在设计时调整大小,那么只需锚定 PictureBox:

它会在表单上的任何位置调整大小。如上所述,它还会在 运行 时间自动调整表单大小。