Jimbetastic
Jimbetastic

Reputation:

What's wrong with this Silverlight template?

I am playing with templates in Silverlight 2.0. I copied this...

<Style x:Key="RoundButton">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="Button">
                <Grid>
                    <Ellipse Width="200" Height="200">
                        <Ellipse.Fill>
                            <RadialGradientBrush GradientOrigin=".2,.2">
                                <GradientStop Offset="0.2" Color="White" />
                                <GradientStop Offset="1" Color="Blue" />
                            </RadialGradientBrush>
                        </Ellipse.Fill>
                    </Ellipse>

                    <TextBlock Text="Push me" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

from a web page at http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-7-using-control-templates-to-customize-a-control-s-look-and-feel.aspx.

I put it into my app.xaml and as yet have not used it anywhere. When I try to run my code I get an error "Exception of type 'System.ExecutionEngineException' was thrown."

What have I done wrong?

Upvotes: 0

Views: 351

Answers (1)

Rich
Rich

Reputation: 36816

I believe that Silverlight requires the TargetType attribute. If you add TargetType="Button" to the Style element, it'll compile and execute without this exception.

EDIT: Yeah...I just followed the link you posted, and he has the TargetType attribute in his sample code. Add that, and you're all good. I created a simple test app with just that Style element and a button using it, and it worked fine.

Upvotes: 1

Related Questions