Changer une colonne dans une datagridview en une couleur différente

la programmation


J’ai une application C# qui affiche une vue en grille de données. La vue de la grille de données
a une colonne Débit et une colonne Crédit. Je souhaite modifier les couleurs d’arrière-plan des colonnes Débit et Crédit. Voici le code :

Ce que j’ai essayé :

dgvCheckRegister.Columns["Debit"].DefaultCellStyle.BackColor = Color.LightPink;
dgvCheckRegister.Columns["Credit"].DefaultCellStyle.BackColor = Color.LightGreen;

Cela fonctionne sauf qu’une colonne sur deux ne reçoit pas de changement. Ce qui est faux
avec mon code ? Merci d’avance.

Solution 1

Si j’essaye votre code dans mon application de test :

C#
DataTable dt = new DataTable();
string strConnect = SMDBSupport.SMInstanceStorage.GetInstanceConnectionString("VideoMaster");
using (SqlConnection con = new SqlConnection(strConnect))
    {
    try
        {
        con.Open();
        SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM Videos", con);
        da.Fill(dt);
        MyDataGridView.DataSource = dt;
        }
    catch (Exception ex)
        {
        Debug.WriteLine(ex.ToString());
        }
    }
MyDataGridView.Columns[1].DefaultCellStyle.BackColor = Color.LightPink;
MyDataGridView.Columns[2].DefaultCellStyle.BackColor = Color.LightGreen;

J’obtiens ce à quoi je m’attendais : la deuxième colonne a un fond rose et la troisième un fond vert.

Vous devez donc regarder exactement ce que vous voyez sur votre écran – que nous ne pouvons pas regarder – ainsi que le reste de votre code pour voir ce qu’il fait à votre DGV.

コメント

タイトルとURLをコピーしました