C# 在运行时从标签中删除图像
在C#中,我有一个2d标签数组,我希望根据条件更改其图像。更具体地说,我想让它在给定图像和完全没有图像之间切换(将其转换为透明标签),然后在满足条件时再次切换。目前,为了再次清除标签,我使用以下方法:C# 在运行时从标签中删除图像,c#,winforms,label,nullreferenceexception,C#,Winforms,Label,Nullreferenceexception,在C#中,我有一个2d标签数组,我希望根据条件更改其图像。更具体地说,我想让它在给定图像和完全没有图像之间切换(将其转换为透明标签),然后在满足条件时再次切换。目前,为了再次清除标签,我使用以下方法: someLabelArray[i][j]。Image=null 但它总是抛出一个空引用异常,这让我怀疑这不是做事情的“正确”方式。或者我误解了错误?有更好的方法吗?我想这绝对没问题,但是someLabelArray是空的,或者someLabelArray[I]对于您使用的I的任何值都是空的 简单的
someLabelArray[i][j]。Image=null代码>
但它总是抛出一个空引用异常,这让我怀疑这不是做事情的“正确”方式。或者我误解了错误?有更好的方法吗?我想这绝对没问题,但是someLabelArray
是空的,或者someLabelArray[I]
对于您使用的I
的任何值都是空的
简单的测试方法:将代码更改为:
someLabelArray[i][j].Text = "foo";
这显然与图像无关,如果您的阵列正常,它肯定会起作用。我怀疑这也会以同样的方式失败,在这种情况下,您需要仔细查看如何构建阵列
如果这个方法有效的话,那么我再看一看:)我想这绝对没问题,但是someLabelArray
是空的,或者someLabelArray[I]
对于您使用的I
的任何值都是空的
简单的测试方法:将代码更改为:
someLabelArray[i][j].Text = "foo";
这显然与图像无关,如果您的阵列正常,它肯定会起作用。我怀疑这也会以同样的方式失败,在这种情况下,您需要仔细查看如何构建阵列
如果这能起作用,那么我再看一看:)请发布构建二维数组的代码。请发布构建二维数组的代码。查看后,您完全正确地发现someLabelArray[I]对于给定值为null。非常感谢您让我走上正确的轨道。在回顾之后,您完全正确地认识到someLabelArray[i]对于给定的值为null。非常感谢你让我走上正轨。