請幫助!我不知道這是否過於簡單,但我無法正確理解,並且似乎無法在其他帖子上找到正確的答案。我對C#比較陌生,我只是爲了愛好而編程,這是我的第一篇文章。創建它的方法之外訪問動態控制
我有這個方法CreateMap()裏面的一個類Met我有我所有的方法。它創建一個動態自定義控件(stockBox [])的數組,並將它們添加到Form內的表格佈局面板(boxContainer)中。此方法在應用程序打開時運行。我得到的一切工作正常,問題是,我想從另一個方法在同一個類中訪問stockBox控件我看不到有智能感知的stockBox,它說它不存在!
public static class Met
{
public static StockBox[] CreateMap(string[] stock, TableLayoutPanel boxContainer)
{
StockBox[] stockBox = new StockBox[Var.stockCount + 1];
for (int i = 1; i <= Var.stockCount; i++)
{
stockBox[i] = new StockBox();
stockBox[i].StockText = stock[i];
boxContainer.Controls.Add(stockBox[i]);
}
return stockBox;
}
}
無法放置StockBox [] stockBox =新StockBox [Var.stockCount + 1]的方法之外,因爲然後Var.stockCount爲0,將創建僅與一個對象的陣列。
任何想法?你認爲我能做什麼?提前致謝。
謝謝你的工作! – VerizonW 2010-10-22 04:16:57
如果我使用stockBox的方法都在Met類中,現在我已經完成了這個工作,那麼我不需要返回stockBox嗎? – VerizonW 2010-10-22 04:23:37
是的。你不需要爲你的CreateMap()方法返回stockBox。只需將其聲明爲public static void CreateMap(string [] stock,TableLayoutPanel boxContainer) – bla 2010-10-22 05:16:29