我有一个我正在处理的 VB 项目,我必须将 GridView 分解为每一行并检查一个特定的单元格。如何检查是否有空值?以下代码导致错误消息
“指定的参数超出了有效值的范围。参数名称:索引”
我检查了 GridViewRow 变量“row”的单元格计数,它出现在 5,所以我不确定我做错了什么。
Protected Sub grdProduct_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles grdProduct.RowDataBound
' Grey out expired products
Dim row As GridViewRow
row = e.Row
Dim incomingStatus As String
If row.Cells(5).Text.ToString() <> vbNull Then
incomingStatus = row.Cells(5).Text.ToString()
Else
incomingStatus = ""
End If
我修改了代码以首先检查单元格计数,但它仍然返回完全相同的错误。
If row.Cells.Count > 5 And row.Cells(5).Text.ToString() <> vbNull Then
incomingStatus = row.Cells(5).Text.ToString()
Else
incomingStatus = ""
End If
最终编辑
像这样修改代码解决了这个问题。多谢你们:
If row.Cells.Count > 5 Then
If row.Cells(5).Text.ToString() <> vbNull Then
incomingStatus = row.Cells(5).Text.ToString()
Else
incomingStatus = ""
End If
End If