我正在将多个图片加载到Panel
(PictureBoxes
内的多个Panel
),并希望在调整窗体大小时调整图像大小。
这是我的代码:
foreach (string filename in ofdmulti.FileNames){
picbox[i] = new PictureBox();
picbox[i].Size = new System.Drawing.Size(256, 256);
picbox[i].SizeMode = PictureBoxSizeMode.Zoom;
picbox[i].Dock = DockStyle.Fill;
i++;
}
但是后来我没有看到多个图像,只有一个并且完全伸展,可能出现了什么问题?
答案 0 :(得分:2)
您的代码存在多个问题。首先,这行代码将确保您只看到一个PictureBox
...可能是您添加的最后一个:
picbox[i].Dock = DockStyle.Fill;
其次,我没有看到您设置的是PictureBox
Location
,因此他们都会Point(0, 0)
,这意味着即使与Dock
相同,它们也会在某种程度上重叠{1}}设置。
如果你想要一个很好的安排,比如Tiled,那么你可以使用TableLayoutPanel
。这样您就可以使用Rows
和Columns
来描述网格模式,然后将PictureBox
控件添加到网格中。
当然,还有其他选择,具体取决于您的目标。
答案 1 :(得分:0)
用您调整大小的图片替换picturebox.Image,并使用sizemode.AutoSize!