現在取り組んでいるVBプロジェクトがあり、GridViewを各行に分割して、特定のセルを調べる必要があります。null値があるかどうかを確認するにはどうすればよいですか?次のコードはエラーメッセージになります
「指定された引数が有効な値の範囲外でした。パラメータ名:インデックス」
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