首页 > 解决方案 > DataGridView.DefaultCellStyle.SelectionBackColor 工作不顺利

问题描述

正如标题所说,DataGridView.DefaultCellStyle.SelectionBackColor not working smoothly我的意思是我创建表单并在加载事件中使用以下代码:

using (FbConnection con = new FbConnection(M.Baza.connectionString))
{
    con.Open();
    using (FbDataAdapter da = new FbDataAdapter("SELECT BRDOK, DATUM, ZA_MAGACINID AS MAGACIN, KOMENTAR1 AS ODREDISTE, PRETVOREN_U_BRDOK_KOMERCIJALNO AS VEZA, FLAG FROM DOKUMENT WHERE VRDOK = 999", con))
    {
        DataTable dt = new DataTable();
        da.Fill(dt);

        dataGridView1.DataSource = dt;

        dataGridView1.Columns["BRDOK"].Width = 100;
        dataGridView1.Columns["DATUM"].Width = 100;
        dataGridView1.Columns["MAGACIN"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
        dataGridView1.Columns["ODREDISTE"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
        dataGridView1.Columns["VEZA"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
        dataGridView1.Columns["FLAG"].Visible = false;
        dataGridView1.DefaultCellStyle.SelectionBackColor = Color.Transparent;
    }
}

如你所见,我设置了dataGridView1.DefaultCellStyle.SelectionBackColor = Color.Transparent;

当我开始我的表格时,我得到了这个

如您所见,第一行是白色的。当我单击其他行并返回它时,它会变为透明,但第一次出现是问题。该怎么办?

标签: c#winformsdatagridview

解决方案


我会避免使用透明作为你的颜色。尝试使用与网格本身相同的颜色:

dataGridView1.DefaultCellStyle.SelectionBackColor = dataGridView1.DefaultCellStyle.BackColor;
dataGridView1.DefaultCellStyle.SelectionForeColor = dataGridView1.DefaultCellStyle.ForeColor;

推荐阅读