ASP.net 数组报错
TableRow [] Rws=new TableRow[8];
TableCell [] Cls=new TableCell[8];
Cls[0].Text ="aaaaaaaaaaaaaaaaaaaaa";
Rws[0].Cells.Add(Cls[0]);
Tb1.Rows.Add(Rws[0]);
编译时是没有问题的,但是到了运行时就弹出如图所示的报错,不懂为什么会这样了,也不懂怎么解决。 --------------------编程问答--------------------
TableRow [] Rws=new TableRow[8];--------------------编程问答-------------------- Table Tb1 = new Table();
TableCell [] Cls=new TableCell[8];
TableCell tc=new TableCell();
tc.Text ="aaaaaaaaaaaaaaaaaaaaa";
Cls[0]=tc;
TableRow[] Rws = new TableRow[8];
TableCell[] Cls = new TableCell[8];
TableCell tc = new TableCell();
tc.Text = "aaaaaaaaaaaaaaaaaaaaa";
Cls[0] = tc;
TableRow tr = new TableRow();
Rws[0] = tr;
Rws[0].Cells.Add(Cls[0]);
Tb1.Rows.Add(tr); --------------------编程问答-------------------- 你定义的是一个数据 但是没实例化对象
以下为实例化对象代码
for (int i = 0; i <8; i++)
{
TableRow w = new TableRow();
for (int j = 0; j <8; j++)
{
TableCell q = new TableCell();
q.Text = "aaaaa"; w.Cells.Add(q);
}
} --------------------编程问答--------------------
TableRow[] Rws = new TableRow[8];
和
TableRow w = new TableRow();
有什么区别啊?“TableRow[] Rws = new TableRow[8]”不是同时实例化8个TableRow么?“TableRow w = new TableRow()”不是实例化1个TableRow么?
我好乱啊,2年没编程了,基础都忘了。声明,定义和实例化是怎么样的? --------------------编程问答-------------------- 想想又想通啦,TableRow[] Rws = new TableRow[8];可以认为是定义了一个TableRow类数组的引用Rws,Rws每个元素又是一个TableRow类对象的引用。而没有实例化TableRow类。 --------------------编程问答--------------------
对的,你只实例化了这个数组而已,数组中TableRow对象为null,然后你用TableRow[0]去除的是一个空的TableRow对象,所以你对去属性赋值当然就会出现你的错误了 --------------------编程问答--------------------
补充:.NET技术 , C#