Having trouble keeping your DC intact? Here's an article on how to do this far more easily using ::SaveDC/::RestoreDC, or CDC::SaveDC/CDC::RestoreDC, as well as a C++ class to make it even easier.