Typically, you the ContentPresenter directly within the ControlTemplate of a ContentControl to mark where the content should be displayed. Every type derived from ContentControl should have a ContentPrenter in its ControlTemplate (although it may not necessarily be a TemplatePart). The ContentPresenter in the ControlTemplate should use a TemplateBinding to associate ContentControl.Content with ContentPresenter.Content (and an other relevant properties like FontSize, VeriticalAlignment, etc.).