Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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.
Carregando comentários...