Unfortunately i couldn't figure out how to use WM_SETREDRAW with ListView controls, but since MDSN describes us how it's implemented i decided to do what they do - remove or add WS_VISIBLE style from the window without invalidating its rectangle.
Here is the pseudo code:
utils::deleteStyle(lv, WS_VISIBLE); utils::addStyle(lv, WS_VISIBLE); RedrawWindow(lv, 0, 0, RDW_INVALIDATE | RDW_ALLCHILDREN);
Of course i don't know how Microsoft exactly implemented that, but the solution above seems to work similarly to WM_SETREDRAW.