ListView does not automatically configure itself to use remote or local. It takes into account the meaning of the advanced style flags that you set when creating the control; if you set LVS_EX_DOUBLEBUFFER , then the display will be buffered twice, and if not, this will not happen. I am sure that Raymond Chen would agree that any other behavior would be a mistake.
You can change the state of the flag at any time using LVM_SETEXTENDEDLISTVIEWSTYLE :
SendMessage(hwnd, LVM_SETEXTENDEDLISTVIEWSTYLE, LVS_EX_DOUBLEBUFFER, isRemote ? 0 : LVS_EX_DOUBLEBUFFER);
The following article after you contacted shows how to receive notifications when the display changes between local and remote: http://blogs.msdn.com/b/oldnewthing/archive/2006/01/04/509194.aspx
source share