C# 创建动态控件
它在verGroup[i].Name处给我一个IndexOutofRangeException。但指数是0,这肯定是它想要的 我也试过了C# 创建动态控件,c#,dynamic,controls,C#,Dynamic,Controls,它在verGroup[i].Name处给我一个IndexOutofRangeException。但指数是0,这肯定是它想要的 我也试过了 int i = amount; //amount will always start at 0 int j = i + 1; GroupBox[] verGroup; verGroup = new GroupBox[i]; verGroup[i].Name = "verGrou
int i = amount; //amount will always start at 0
int j = i + 1;
GroupBox[] verGroup;
verGroup = new GroupBox[i];
verGroup[i].Name = "verGroup" + i.ToString();
verGroup[i].Width = 400;
verGroup[i].Height = 120;
verGroup[i].Left = 5;
verGroup[i].Top = 5 + (verGroup[i].Height * i) + (10 * i);
verGroup[i].Text = "Verification #" + j.ToString();
pnlVer.Controls.Add(verGroup[i]);
但这会引发“对象引用未设置为对象实例”错误
如果有人能给我指出正确的方向,我将不胜感激 因为数量从0开始,并且您创建了一个大小为i的数组,所以您正在创建一个大小为0的数组。因此,无法对数组中的任何内容编制索引,因为它的长度为0
第二个错误是因为您没有初始化组框。您需要说verGroup[i]=newgroupbox();初始化它 因为数量从0开始,并且您创建了一个大小为i的数组,所以您正在创建一个大小为0的数组。因此,无法对数组中的任何内容编制索引,因为它的长度为0
第二个错误是因为您没有初始化组框。您需要说verGroup[i]=newgroupbox();初始化它 首先,您要在此处分配一个
GroupBox
数组:
verGroup = new GroupBox[5]
但是,这不会在数组中分配GroupBox值。这需要单独处理:
GroupBox[] verGroup;
verGroup = new GroupBox[i];
首先,在这里分配一个
GroupBox
数组:
verGroup = new GroupBox[5]
但是,这不会在数组中分配GroupBox值。这需要单独处理:
GroupBox[] verGroup;
verGroup = new GroupBox[i];
您的代码非常糟糕,只需创建一次数组。然后需要实例化数组中的每个项
GroupBox[] verGroup;
verGroup = new GroupBox[i+1];
for(int gb = 0; gb < verGroup.Length; ++gb)
verGroup[gb] = new GroupBox(); // This creates the individual group box elements
verGroup[]=新分组框[金额];
对于(int i=0;i
您的代码非常糟糕,只需创建一次数组。然后需要实例化数组中的每个项
GroupBox[] verGroup;
verGroup = new GroupBox[i+1];
for(int gb = 0; gb < verGroup.Length; ++gb)
verGroup[gb] = new GroupBox(); // This creates the individual group box elements
verGroup[]=新分组框[金额];
对于(int i=0;i
您必须有一个很好的理由来解释为什么要创建数组
您必须有一个很好的理由来解释为什么要创建数组您正在创建数组,但从未在ittry中创建任何对象添加verGroup[i]=new GroupBox();在第一次分配之前,您正在创建数组,但从未在ittry中创建任何对象,添加verGroup[i]=new GroupBox();在你第一次任务之前谢谢,这让我明白了。我知道这些都是愚蠢的错误,只是不知道是什么。谢谢,这帮我澄清了。我知道这些都是愚蠢的错误,只是不知道是什么。