sábado, 14 de maio de 2011

Alternando as cores das linhas do DataGridView

Em Visual Basic 6.0, quando se tinha a necessidade de alternar as cores das linhas de uma grade (ListView, MSFlexGrid, MSHFlexGrid, DataGrid...), o programador precisa recorrer a algum recurso externo (API ou linhas de código) para obter um bom resultado. Em VB.NET, não há esta necessidade, já que o próprio controle dispõe de uma janela de configuração que possibilita o ajuste manual. Este exemplo será demonstrado no Visual Studio 2010 em linguagem VB.NET.

Abra o Visual Studio (VS) e crie um novo projeto (File > New > Project) do tipo Windows Forms Application em linguagem VB.NET.


Adicione um controle DataGridView (que está alocado na guia Data da Toolbox) no Form1, dando um duplo-clique sobre o controle.



Com a janela devidamente pronta, precisamos alimentar a grade para demonstrar as linhas com cores alternadas. Para isso, dê um duplo-clique sobre a área livre do Form1, e escreva o código abaixo no evento Load.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Lista contendo os times semi-finalistas da Copa do Brasil
        Dim copaDoBrasil() As String = {"CEARÁ", "CORITIBA", "VASCO", "AVAÍ"}

        'Criar uma coluna no Grid
        DataGridView1.Columns.Add("Time", "Semi-Finalistas da Copa do Brasil")
        DataGridView1.Columns(0).Width = 340

        'Popular a grade usando os itens da lista
        For Each time As String In copaDoBrasil
            DataGridView1.Rows.Add(time)
        Next
    End Sub

Por fim, volte para a guia Design e acesse a janela de Propriedades para ajustar as configurações do Grid. Selecione a opção AlternatingRowsDefaultCellStyle e clique no botão [...]. Na janela CellStyle Builder, altere a propriedade BackColor para a cor desejada e clique no botão OK.



Execute a aplicação e teste o projeto. A imagem abaixo representa o resultado que obtive no término do exemplo.


Fico por aqui e até a próxima.

Nenhum comentário:

Postar um comentário

Deixe aqui seu comentário