MARCAR LINHA DATAGRID

ALTAIR148 09/08/2011 15:37:27
#381157
Boa tarde,


Tenho um datagrid que é preenchido e após ele preenchido tenho uma rotina que procura todos os registros com status de [Ô]Vencida[Ô] e marca a linha, no carregamento do formulário funciona perfeito, o problema é que se eu clica no cabeçalho da coluna do datagrid as linhas voltam com a cor normal. Abaixo segue a rotina que estou utilizando para colorir as linhas.


Private Sub ProcuraVencidas()
Dim varlinha As Integer
varlinha = 0
For x = 0 To DataGridView1.RowCount - 1
If DataGridView1.Rows(varlinha).Cells(11).Value = [Ô]Vencida[Ô] Then
DataGridView1.Rows(varlinha).DefaultCellStyle.BackColor = Drawing.Color.Aqua
varlinha += 1
End If
Next
End Sub


Obrigado
ADHEL 09/08/2011 16:10:10
#381160
Resposta escolhida
Coloca essa rotina no evento
ColumHeaderMouseClick do datagrid
ALTAIR148 09/08/2011 16:34:24
#381163
Boa tarde,

ADHEL fiz da seguinte forma.:

  Private Sub ProcuraVencidas()
Dim varlinha As Integer
For x = 0 To DataGridView1.RowCount - 1
If DataGridView1.Rows(varlinha).Cells(11).Value = [Ô]Vencida[Ô] Then
DataGridView1.Rows(varlinha).DefaultCellStyle.BackColor = Drawing.Color.Aqua
varlinha += 1
End If
Next
varlinha = 0
End Sub

Private Sub DataGridView1_ColumnHeaderMouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView1.ColumnHeaderMouseClick
ProcuraVencidas()
End Sub


Da primeira vez que clico fica tudo em branco novamente, já na seguda ai ela volta a colorir.


Obrigado
ADHEL 09/08/2011 16:45:05
#381165
Para colorir eu faço essa rotina

Sub Colorir_Celula()
Dim estilo As New DataGridViewCellStyle
estilo.BackColor = Color.Aqua
estilo.ForeColor = Color.Black

For z = 0 To dgv.Rows.Count - 1
dgv.Item(3, z).Style = estilo
Next

Onde 3 é o numero da célula que desejo colorir
ADHEL 09/08/2011 16:47:07
#381166
E não tenho problemas
Coloco essa rotina no carregamento e no evento que te disse
ALTAIR148 09/08/2011 17:15:53
#381168
Boa tarde,

Perfeito ADHEL obrigado ai...

Até mais.
Tópico encerrado , respostas não são mais permitidas