Function para alterar cada linha de um DataGridView
Olá, tenho uma tabela que puxo de um arquivo Access para ser visualizada dentro de um DataGridView.
Preciso desenvolver um método para alterar a cor de cada linha, cada linha com uma cor distinta de acordo com o valor de uma célula.
Minha tabela possui as seguintes colunas:
BatchID - Product - BachtSize - Priority - StartReq - Status
Os campos que serão analisados estão na coluna "Status"
Os valores variam entre: Completed(Verde), Delayed(Vermelho), In Progress(Amarelo), New(Branco)
Baseado nos valores que podem ser encontrados, preciso de ajuda para desenvolver um método que altere a linha de acordo com o valor.
Esse é todo o código que estou utilizando.
Public Class MainView
Private Sub btnMainViewCarregarDados_Click(sender As Object, e As EventArgs) Handles btnMainViewCarregarDados.Click
Try
Dim dt As New NorthwindDataSet.All_BatchesDataTable
Using da As New NorthwindDataSetTableAdapters.All_BatchesTableAdapter
da.Fill(dt)
End Using
DataGridView1.DataSource = dt.DefaultView
Dim cma As CurrencyManager = DirectCast(BindingContext(dt.DefaultView), CurrencyManager)
AddHandler cma.CurrentChanged, AddressOf SecondaryTable
SecondaryTable(Me, Nothing)
Catch ex As Exception
MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
Public Sub SecondaryTable (ByVal sender As Object, ByVal e As EventArgs)
Try
Dim dv1 = DirectCast(DataGridView1.DataSource, DataView)
Dim dv2 As New DataView(dv1.Table)
Dim cma = DirectCast(BindingContext(dv1), CurrencyManager)
'define o filtro pelo nome e a seleção do nome no primeiro datagridview
dv2.RowFilter = "BatchID = '" & dv1(cma.Position)("BatchID").ToString & "'"
'atribui o valor ao segundo datagridview
DataGridView2.DataSource = dv2
Catch ex As Exception
Throw ex
End Try
End Sub
End Class
Eu sou novato com desenvolvimento ASPNET e estou me adaptando ainda.
Peço desculpas se não conseguir ser muito claro em minha dúvida.
Desde já agradeço qualquer ajuda.
Discussão (6)
Carregando comentários...