WPF: Control Template that is customized by properties

By Nipun Tomar Blogs | WPF Dec 15, 2011
The following example demonstrates a window that defines a custom ControlTemplate

The following example demonstrates a window that defines a custom ControlTemplate for the System.Windows.Controls.Label control. Within the ControlTemplate there is a System.Windows.Controls.Border control that uses the TemplateBinding markup extension to declare that its Background property should derive its value from the Background property of the Label element, which in this case is set to LightBlue.

For Example:


<
Window x:Class="ControlTemplate.Window1"
xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
Title="ControlTemplate" Height="100" Width="180">
<Window.Resources>
  <ControlTemplate x:Key="labelTemplate" TargetType="{x:Type Label}">
    <Border x:Name="border" CornerRadius="4" BorderThickness="3" 
            BorderBrush="DarkGray" Background="{TemplateBinding Property=Background}">
      <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
    
</Border>
 
 </ControlTemplate>
</Window.Resources>
  <Grid>
   <Label Width="100" Height="24" Margin="4" Content="Custom Label" 
      Template="{StaticResource labelTemplate}" Background="LightBlue"/>
  </Grid>
</
Window>
COMMENT USING

PREMIUM SPONSORS

Hire Mobile & Web Developer on demand. 100% satisfaction. Try for 1 week or Money Back. Local and remote developers available all over USA.

Latest Blogs