2012-01-25 90 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; 
}