更新datagridview单元格样式

时间:2012-08-07 07:13:14

标签: c# datagridview styles refresh

我试图让用户更改我的应用中显示的数据网格的颜色。

为此我使用用户设置和colordialog框。

问题是,当我尝试更新颜色时,它不显示,我要么必须关闭/重新打开应用程序才能看到更改,或者加载完全不同的DGV(它们位于tabcontrol中)。

这是我在更新时使用的代码:

AlternatingRowsDefaultCellStyle.BackColor = Properties.Settings.Default.CellBackColor1;
我错过了什么吗?

我试图刷新DGV,但它并没有改变一件事。

1 个答案:

答案 0 :(得分:0)

我在打开Button的表单中添加了ColorDialog,并等待用户选择颜色。如果用户点击OK按钮,它首先保存设置,然后将dataGridView.CellStyle.BackColor设置为用户选择的任何颜色。这会强制立即使用正确的背景颜色更新表单。

private void button1_Click(object sender, EventArgs e)
{
    if (colorDialog1.ShowDialog() == DialogResult.OK)
    {
        Properties.Settings.Default.CellBackColor1 = colorDialog1.Color;
        dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = colorDialog1.Color;
    } 
}

我认为您的Form.LoadForm.FormClosing事件会处理设置的保存。