I have spent some considerable time searching through the microsoft.NET msdn help files with this problem. I can't seem to find any method (apart from access API libraries) in c# language to obtain the colour of a pixel on a form/control, and setting it. During scrolling of a control, I would like to bitlbt (bit blitting) part of the control that stays visible, and invalidate only the newly exposed part of the control. The reason for this is to make scrolling more smooth and efficient.