2017-05-29 74 views
0

我有这样的代码,但它简化版,工作:我想改变DataGrid的颜色在C#

private void dgv_CellClick(object sender, DataGridViewCellEventArgs e) 
{ 
    dgv.CurrentCell.Style.BackColor = Color.Red; 
} 

我希望它改回来颜色,请单击单元格时。

+0

它是Windows窗体还是WPF?请发布[mcve]。 “不起作用”不是一个好的描述。你能设置一个断点吗,这条线甚至会被调用吗? – nvoigt

+0

对不起是Windows窗体:) –

+0

[DataGridView改变单元格背景颜色](https://stackoverflow.com/questions/16105718/datagridview-changing-cell-background-color) –

回答

0

这工作正常,但你不能看到它,只要细胞也是选择

通过简单地取消当前或所有的细胞就可以看到新的颜色马上,即离开小区之前:

private void dgv_CellClick(object sender, DataGridViewCellEventArgs e) 
{ 
    dgv.CurrentCell.Style.BackColor = Color.Red; 
    // deselect either just the one you just selected..: 
    dgv.CurrentCell.Selected = false; 
    // ..or deselect all cells: 
    dgv.ClearSelection(); 
} 
-1

尝试使用下面的语句。这应该对你有帮助dgv.CurrentCell.Style.SelectionBackColor=Color.Red

+0

这可能是直接从操作中取得的! ? – TaW