我正在尝试将面板添加到groupbox,面板将具有背景图像。
我有三个文件,因此我应该在组框中有3个面板,但是会显示4个面板,并显示相同的照片。我使用以下代码:
DirectoryInfo di = new DirectoryInfo(folder);
FileInfo[] rgFiles = di.GetFiles();
Point NewPosition =new Point() ;
foreach (FileInfo fi in rgFiles)
{
Bitmap b = new Bitmap(folder+@"\"+ fi.Name);
Panel p = new Panel();
p.Size = b.Size;
p.BackgroundImage = b;
p.Name = fi.Name;
p.Dock = DockStyle.Top;
control.Controls.Add(p);
}
请提出任何建议。
答案 0 :(得分:5)
您没有设置面板的位置。
我猜测这些面板堆叠在一起,使得顶部面板成为唯一可行的面板。
Panel具有位置属性,您可以设置该属性。您还可以使用 Dock 属性停靠面板。
一些简单的例子:
p.Dock = DockStyle.Top;
或
p.Location = new Point(50, 50);