C # ListView realizar el movimiento del ratón y la línea elemento resaltado de doble búfer Listview
1, una declaración de clase ListView, cuenta el doble buffer
class ListViewBuffered : System.Windows.Forms.ListView
{
public ListViewBuffered()
{
// 开启双缓冲
this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
// Enable the OnNotifyMessage event so we get a chance to filter out
// Windows messages before they get to the form's WndProc
this.SetStyle(ControlStyles.EnableNotifyMessage, true);
}
}
2, la Listview modificada componente ha sido añadido, modificaciones: designer.cs Abiertas Winform el archivo, el tipo de componente que corresponde a desde System.Windows.Forms.ListView Listivew de nuevo diseño basado modificados ListViewBuffered, un total de 2, una Departamento para el nuevo tipo de objeto es una declaración de variable.
this.listView1 = new ProxyRedis.ListViewBuffered();
private ListViewBuffered listView1;
3, añadir un evento para realizar la función de un evento MouseMove, el otro es ItemMouseHover caso, aquí se recomiendan evento MouseMove, ya que puso de relieve ningún retraso.