This document discusses control templates in Silverlight. It defines a control template as specifying the visual structure and behavior of a control. Customizing a control involves giving it a new control template. When creating a control template, you replace the appearance of an existing control without changing its functionality. It must have a single root element derived from FrameworkElement. Content and item presenters are used to define where content is placed. Control templates customize controls, while data templates visualize non-visual data objects.