2012-01-25 38 views
0

嘿,我需要一些C#Windows窗体应用程序作业的帮助。假设我有一个10个图片盒的阵列,他们有名字“pic0”,“pic1”等等。我需要在代码中用for循环来调用它,这是我的问题。对不起,如果我解释得很糟糕,但我会尝试向你展示我试过的代码。用循环调用图像

for(int i=0;i<Array.Length;i++) 
{ 
    ("pic" + i).Visible = true; 
} 

我想在循环中做的是循环访问数组,循环显示所有内容。 问题是我不认为调用(“图片”+我)。可见的作品。有什么建议么?

+0

由于这个问题有多简单,我现在面临着面临的挑战。感谢大家。 – user1033065

+0

如果您在下面找到了正确的答案,请将其标记为这样..当它们遇到类似问题时,它可以帮助其他用户,因为您的用户能够识别出正确答案 –

回答

1

使用数组而不是名称 - 数组中的每个元素都将是一个Picturebox,您可以在其中设置Visible属性。

for(int i=0;i<someArray.Length;i++) 
{ 
    someArray[i].Visible = true; 
} 
0

好吧,如果你有,你可以通过该数组中的元素进行迭代图片框的数组(这大概是图片框元素的数组,而不是他们的名字),并设置每个元素的Visible属性。

// assuming yourArray is the array holding your PictureBox elements 
for(int picBoxIndex = 0; picBoxIndex < yourArray.Length; picBoxIndex++) 
{ 
    yourArray[picBoxIndex].Visible = true; 
} 

另一种方式来遍历图片框元素的数组是用foreach语句是这样的:

// again, yourArray is an array of PictureBox elements: PictureBox[] yourArray 
foreach(PictureBox element in yourArray) 
{ 
    element.Visible = true; 
} 

但是,如果你只有在一个阵列的名字(字符串),那么你将需要以不同的方式做事。

0

表达式("pic" + i)可能不会编译,如果是,则返回string类型的对象。

string类型的对象没有Visible属性。

您需要一种查找所需Windows窗体控件的方法。实际上,你已经拥有了数组中的所有对象。

foreach (Control control in array) { 
    control.Visible = true; 
}