动态添加面板c#
问题描述:
我试图将面板添加到groupbox,面板将有一个backgroundimage。动态添加面板c#
我有三个文件,所以我应该在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([email protected]"\"+ 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);
}
请任何建议。
答
您没有设置面板的位置。
我猜这些面板堆叠在一起,使顶部面板成为唯一可行的面板。
面板有一个位置属性,你可以设置。您也可以使用Dock属性停靠您的面板。
夫妇的简单的例子:
p.Dock = DockStyle.Top;
或
p.Location = new Point(50, 50);
什么问题? – 2011-05-27 21:40:03
@Cory,他表示只有一个正在显示。 – 2011-05-27 21:41:19
什么类型是“控制”变量?此外,我没有看到面板的任何位置,所以也许他们在对方,只有最后一个可见(隐藏下面的其他人)? – 2011-05-27 21:42:14