i solved my flickering problems with ListView setting DoubleBuffered property to true.

Now I am wondering:
why is DoubleBuffered set to false by default?
when DoubleBuffered should be kept set to false? Is there any unwanted side-effect when DoubleBuffered is set to true?

I'm asking this because my overridden ListView is always used by my apps with DoubleBuffered=true.