0

セルに特定の値が含まれている場合、個々の datagridviewcell の背景色を赤に変更する方法があるかどうかを調べようとしています。例えば:

 If (columnindex = 1) Then

        Dim cellData = DataGridView1.Rows(rowindex).Cells(columnindex).Value
        If cellData Is Nothing OrElse IsDBNull(cellData) OrElse cellData.ToString = String.Empty Then
            'Do nothing because this is allowed
            'Now I want to set the default backcolor for the datagridview to white
            DataGridView1.Rows(rowindex).Cells(columnindex).DefaultCellStyle.BackColor = Color.White
        ElseIf cellData < 0 Or cellData > 1 Then
            MessageBox.Show("Value Must be between 0 and 1")
            DataGridView1.Rows(rowindex).Cells(columnindex).Value = 0
            'This is where I'm hoping to make only the cells that values are not between 1 or zero have a backcolor of red
            DataGridView1.Rows(rowindex).Cells(columnindex).DefaultCellStyle.BackColor = Color.Red
            Exit Sub

        End If
    End If

現在のところ、1 つ以上のセルに無効なデータが含まれている場合、私のコードは datagridview の最初の列全体を赤くします。無効なデータを含むセルのみが赤くなることを望んでいます。誰かがこれを理解できるなら、私はそれを大いに感謝します! :)

4

1 に答える 1

2

代わりにこのようにセルにアクセスします

DataGridView1.Item(columnindex, rowindex).Style.BackColor = Color
于 2013-07-24T18:53:08.540 に答える