32 lines
806 B
C#
32 lines
806 B
C#
|
|
using System;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using System.Text;
|
|||
|
|
using System.Windows.Forms;
|
|||
|
|
|
|||
|
|
namespace WinGridProxy
|
|||
|
|
{
|
|||
|
|
class ListViewNoFlicker : ListView
|
|||
|
|
{
|
|||
|
|
public ListViewNoFlicker()
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
//Activate double buffering
|
|||
|
|
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);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected override void OnNotifyMessage(Message m)
|
|||
|
|
{
|
|||
|
|
//Filter out the WM_ERASEBKGND message
|
|||
|
|
if(m.Msg != 0x14)
|
|||
|
|
{
|
|||
|
|
base.OnNotifyMessage(m);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|