我试图让用户更改我的应用中显示的数据网格的颜色。
为此我使用用户设置和colordialog框。
问题是,当我尝试更新颜色时,它不显示,我要么必须关闭/重新打开应用程序才能看到更改,或者加载完全不同的DGV(它们位于tabcontrol中)。
这是我在更新时使用的代码:
AlternatingRowsDefaultCellStyle.BackColor = Properties.Settings.Default.CellBackColor1;
我错过了什么吗?
我试图刷新DGV,但它并没有改变一件事。
答案 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.Load
和Form.FormClosing
事件会处理设置的保存。