我有一个表单,在表单中我有一个名为mypanel
的面板现在我想写一个类,在这个类中我想用它:
foreach (Control cont in mypanel.Controls)
{
// do sth
}
但这是不可能的,请帮助我如何访问我班级的表格面板
我使用此代码:
foreach (Control cont in mypanel.Controls)
{
if (cont is PictureBox)
{
string path = @"" + Application.StartupPath + "\\Image\\";
cont.BackgroundImage = Image.FromFile(path + Rnd.Next(7).ToString() + ".png");
}
}
我有这个错误:
“名称'mypanel'在当前上下文中不存在”
答案 0 :(得分:0)
检查控件的类型是否为Panel
并投射它。
foreach (Control cont in mypanel.Controls)
{
if(cont is Panel)
{
Panel myPanel = (Panel)cont;
MessageBox.Show(myPanel.Name);
}
}
您需要将控件转换为PictureBox
,因为并非所有控件都包含您要设置的特定属性,
PictureBox pBox = (PictureBox)cont;
pBox.BackgroundImage = Image.FromFile(path + Rnd.Next(7).ToString() + ".png");