Lately I’ve been writing some topics on using the Silverlight designer in Visual Studio 2010 RC to build SL4 apps. One of the features of the designer that I find super cool is the ability to make changes to a control template, and provided you are using that control in your application, see the changes in the template reflected on the design surface right away. For example, I have the following XAML, which contains a style and template for a button, and my page contains a button:

<Grid x:Name="LayoutRoot" Background="White">
        <!--Define a template that creates a gradient-colored button.-->
        <Style TargetType="Button">
            <Setter Property="Template">
                    <ControlTemplate TargetType="Button">
                        <Border  x:Name="Border"
                            CornerRadius="5" BorderThickness="1"  BorderBrush="Black">
                                <LinearGradientBrush StartPoint="0,0.9" EndPoint="1,0.4">
                                        Color="{Binding Background.Color,
                                        RelativeSource={RelativeSource TemplatedParent}}" Offset="0.0" />
                                    <GradientStop Color="Gold" Offset="0.9" />
                            <ContentPresenter Margin="2"  HorizontalAlignment="Center" VerticalAlignment="Center" />
    <Button Name="gradientButton" Background="Green">Click Me!</Button>

Here’s how my app looks like on the design surface:

(It’s one giant gradient button, which is not terribly realistic, but will help illustrate the feature.)


As I make changes in the template the design surface reflects these changes. In this example, I change the CornerRadius, BorderThickness, and BorderBrush of the button border, and the design surface updates as soon as I complete the changes. Let me illustrate…

I set: CornerRadius=”25and get:


then BorderThickness=”5 and get:


and finally BorderBrush=”Green and get this result:


I didn’t need to compile and run to see my changes. How awesome is that?

If you want to play with Silverlight 4 and Visual Studio 2010 yourself, go to to get links to all the tools.