如何根据单元格值在datagridview行中应用循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何根据单元格值在datagridview行中应用循环相关的知识,希望对你有一定的参考价值。

我在datagridview中循环有这个问题,我有3列。第1列,第2列和第3列。

情况是当“Column2”值等于或大于75时,“Column3”值等于“Column1”。否则“Column3”等于0。

如果“Column2”值为“IP”或“NFE”,则“Column3”值等于0。

以下是插图:

  Column1   Column2    Column3
     3         78        3
     3         76        3
     3         65        0
     3         IP        0
     3        NFE        0

我试过这段代码;

Private Sub DGVGRADES_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles DGVGRADES.CellValueChanged
    For Each row As DataGridViewRow In DGVGRADES.Rows
        If row.Cells(4).Value >= 75 Then
            row.Cells(0).Value = row.Cells(3).Value
        ElseIf row.Cells(4).Value.ToString <= 3 Then
            row.Cells(0).Value = row.Cells(3).Value
        ElseIf row.Cells(4).Value < 75 Then
            row.Cells(0).Value = 0
        ElseIf row.Cells(4).Value = "IP" Then
            row.Cells(0).Value = 0
        End If
    Next
End Sub

但是给我这个错误。

从字符串“IP”到“Double”类型的转换无效。

对于我的学校要求,我真的非常需要帮助。谢谢

答案

这应该是你的功课的一个简单的解决方案。但是你应该理解代码,而不仅仅是复制/粘贴答案。

Private Sub DGVGRADES_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles DGVGRADES.CellValueChanged
    For Each row As DataGridViewRow In DGVGRADES.Rows
        If Double.TryParse(row.Cells(4).Value, Nothing) = False Then
            If row.Cells(4).Value.ToString = "NFE" Then
                row.Cells(0).Value = 0
            ElseIf row.Cells(4).Value.ToString = "IP" Then
                row.Cells(0).Value = 0
            End If
        Else

            If row.Cells(4).Value >= 75 Then
                row.Cells(0).Value = row.Cells(3).Value
            ElseIf row.Cells(4).Value.ToString <= 3 Then
                row.Cells(0).Value = row.Cells(3).Value
            ElseIf row.Cells(4).Value < 75 Then
                row.Cells(0).Value = 0
            End If
        End If
    Next
End Sub

以上是关于如何根据单元格值在datagridview行中应用循环的主要内容,如果未能解决你的问题,请参考以下文章

c# DataGridView 从选定行获取单元格值

如何根据列和行中提供的条件查找表格单元格值?

Datagridview 单元格值评估 vb.net

如何使用 Angular 6 + Handsontable 根据另一个单元格值仅更改一个单元格值?

赢表格。使用 BindingNavigator 时如何使 DataGridView 写入单元格值

根据每个表格行中的单元格值更改按钮文本 - Jquery