2012-07-10 44 views
2
一些文本设置背景颜色

我知道一种方法来改变一个单元格的背景颜色在一个DataGridView:在DataGridViewCell的

DataGridView1.CurrentCell.Style.BackColor = Color 

不过,我需要改变背景色为文本的仅一部分。例如,如果我在单元格中有“哈利遇见莎莉”,我想在粉红色背景中设置“哈利”,并在绿色背景中设置“莎莉”。

有谁知道一个很好的方法来做到这一点? 任何帮助将不胜感激。

回答

1

这不能用标准工具来实现。您将不得不重写继承自DataGridViewImageCell的自定义类的绘画事件。作为此回答的一部分,提供了一个示例,如https://stackoverflow.com/a/10100992/626442,其中显示了如何在DataGridViewCell内创建进度条。使用这个答案,将它扩展到你所需要的不应该是太多的任务。

我希望这会有所帮助。

0
 if (dataGridView1.Rows[0].Cells[0].Value.ToString().Contains("Harry") == true) 
     { 
      dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Pink; 
     } 
     else if(dataGridView1.Rows[0].Cells[0].Value.ToString().Contains("Sally") == true) 
     { 
      dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Green; 
     } 
+0

错误,没有。不是我问的。你可能想避免使用“if(condition == true)”的方式。 – 2013-12-20 14:26:27

相关问题