c# - 处理空异常 C#

标签 c# null

好的,这里的新编码员希望对这个问题有一点了解。所以我有一个像这样开始的 for 循环:

for (int i = 0; i < rowHandles.Length; i++)
{
      .........code....
}

rowHandles 是一个包含数据行的 int 数组。此 for 循环具有在单击删除按钮时删除数据行的代码,具体来说,它是一个网格工具条删除按钮,它位于删除按钮单击事件处理程序内。问题是当没有剩余行时可以单击删除按钮,因此 rowHandles.Length 等于 null。我将如何防止它停止程序?我可以在 for 循环内、for 循环声明中或 for 循环外添加一些东西来纠正这个问题吗?也许试钓?这将如何围绕这个特定问题/循环构建?

感谢您的帮助 - 新手编码器

最佳答案

如果问题是 rowHandles 可以是 null 那么只需添加一个显式检查以防止您执行 for 语句。

if ( rowHandles != null ) { 
  for ( int i = 0; i < rowHandles.Length; i++ ) {
    ...
  }
}

如果没有要删除的行,另一种选择是完全禁用删除按钮。该操作无效,因此从一开始就阻止它。

关于c# - 处理空异常 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4055263/

相关文章:

c# - 使用XMLReader读取大型XML文档将信息解析成类

c# - Entity Framework AsNoTracking 中断对 Distinct 的调用

c# - 奇怪,IEnumerable.ToList() 创建了全新的对象

sql-server-2008 - 如何从sql查询结果中删除空行?

Lisp (null (QUOTE NIL)) 返回 NIL

c# - 为什么我需要创建一个返回 DateTime.Now 而不是直接使用 DateTime.Now 的 DateTime 服务?

c# linq 更新数据库中的所有记录

java - 从 Jar : Always null 加载图像

Javascript Float32 数组抛出无法读取 null 的属性 '0',即使数组定义明确

php - DOMXPath $html->query ('//p[@class="myclass"]/a')->item(0); 不工作