Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何手动创建恰好位于form1上两个面板之间的pictureBox?_C#_Winforms - Fatal编程技术网

C# 如何手动创建恰好位于form1上两个面板之间的pictureBox?

C# 如何手动创建恰好位于form1上两个面板之间的pictureBox?,c#,winforms,C#,Winforms,我的form1尺码是800600 然后我在form1 designer中有两个面板: 面板1位于位置:0,24尺寸:200437 面板2位于位置:584,24尺寸:200437 结果是在表单的每一侧有两个面板。 现在我在我的程序中做了,当你把鼠标放在form1区域的某个地方时,它显示了我在form1构造函数中创建的一个pictureBox: pb = new AnimatedPictureBox.AnimatedPictureBoxs(); pb.Visible = false; pb.Size

我的form1尺码是800600 然后我在form1 designer中有两个面板:

面板1位于位置:0,24尺寸:200437 面板2位于位置:584,24尺寸:200437

结果是在表单的每一侧有两个面板。 现在我在我的程序中做了,当你把鼠标放在form1区域的某个地方时,它显示了我在form1构造函数中创建的一个pictureBox:

pb = new AnimatedPictureBox.AnimatedPictureBoxs();
pb.Visible = false;
pb.Size = new Size(500, 350);
pb.Location = new Point((ClientSize.Width - pb.Width) / 2,
   (ClientSize.Height - pb.Height) / 2);
问题在于,新的pictureBox变量pb的大小不足以填充两个面板之间的所有区域。 我希望pictureBox的大小能够填满两个面板之间几乎所有的空间,宽度和高度可能会留出一些空间,比如每边5个空间,这样就有一个边框

如何计算pictureBox的大小

编辑**

这是程序正常工作的图像。在左侧和右侧的每个面板上,我添加了4个图片框。 当我把鼠标光标移到一个图片框区域时,它的内容显示在中间的一个更大的图片框中。

当我把鼠标光标放在图片框的一个区域时,中间的PICTIONBOX不够大,宽度和高度的剂量使得大的图片框在两个面板之间非常精确。大画框不够高也不够宽


如果要使布局在调整大小后保持稳定,则应为面板使用
停靠
属性,并为图片框设置
锚定
。就像这样:

panel1.Dock = DockStyle.Left;
panel2.Dock = DockStyle.Right;
pb.Anchor = AnchorStyles.Left | AnchorStyles.Right;
一般来说,要把它放在中间,你可以用这样的东西:

var width = this.Width - panel1.Width - panel1.Margin.Horizontal
                - panel2.Width - panel2.Margin.Horizontal;

pb.Size = new Size(width, 300); // put your needed height here

pb.Top = this.Height/2 - pb.Height/ 2;
pb.Left = panel2.Left + panel2.Width + panel2.Margin.Right;

图形表示将有助于更好地理解您的需求用图像更新我的问题显示大图片框宽度可以,但其高度不好顶部不够高,底部也不够高它没有到达面板高度所在的位置。我的意思是面板的顶部和底部的边界。大图片盒也应该是这个高度。什么是面板3?我没有面板3,只有面板1和面板2