请帮助!我不知道这是否过于简单,但我无法正确理解,并且似乎无法在其他帖子上找到正确的答案。我对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