2010-09-13 87 views
0

我想突出显示鼠标所在的行和列。基本上这意味着改变所有适当单元的背景颜色。目前我正在尝试在MouseMove事件中执行此操作。但是,这导致性能下降。当鼠标移动时,有效地突出显示DataGridView上的列和行

我被建议使用WPF获得更好的性能,但是我不想走这条路。有什么方法可以提高C#中的性能?

回答

2

尝试CellMouseEnter事件;它只会在每次鼠标移过一个新单元时触发一次,与MouseMove不同,它不需要点击单元格来触发事件。您可能应该处理CellMouseEnter(用于突出显示新单元格),CellMouseLeave(用于未加亮显示旧单元格)以及可能整个DGV(确保所有单元格不亮)的Leave事件。

0

您可以使用DataGridView.RowEnter Event,仅当新行变为活动状态时才会发生。 msdn链接显示完全相同的样本,你正试图完成。

+0

但这只适用于在新行上点击鼠标的情况。我需要跟踪鼠标移动。 – sbenderli 2010-09-13 18:23:57

相关问题