Для Интернета я вытащил и изменил некоторый код, чтобы изменить цвет фона текущей ячейки в datagridview при редактировании текста. Проблема в том, что фоновый цвет, кажется, меняется только в тексте ячеек, а не во всей ячейке (кажется, что в ячейке есть поле в 3 пикселя, имеющее исходный цвет). Ниже приведен код, который я использую:
Public Class Form1
Dim a, b As Integer
Dim myvalue As String
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
a = 0
Do While a < 10
Me.DataGridView1.Rows.Add()
a += 1
Loop
End Sub
Private EditingControl As DataGridViewTextBoxEditingControl
Private Sub DataGridView1_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
EditingControl = e.Control
AddHandler EditingControl.TextChanged, AddressOf EditingControl_TextChanged
End Sub
Private Sub EditingControl_TextChanged(sender As Object, e As EventArgs)
EditingControl.BackColor = Color.White
End Sub
Private Sub DataGridView1_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
If EditingControl IsNot Nothing Then
RemoveHandler EditingControl.TextChanged, AddressOf EditingControl_TextChanged
End If
EditingControl = Nothing
End Sub
End Class
Кто-нибудь знает, что я сделал не так с кодом?