Silverlight开发工具作为一个跨多平台的WEB应用程序,专门帮助开发人员来轻松实现基于多媒体方面的各种功能需求。那么对于Silverlight创建模板的方法,可能对于初学者来说并不是很容易理解。#t#
控件的文字以及控件的大小都是固定的,我们希望在开发人员使用Silverlight创建模板中再设定,可以在控件模板中通过使用 {TemplateBinding ControlProperty} 的标识扩展句法来绑定到控件的属性来实现,使用ContentPresenter控件可以灵活的设置各个属性。修改RoundButton样式如下所示:
- < Style x:Key="RoundButton"
TargetType="Button"> - < Setter Property="Template">
- < Setter.Value>
- < ControlTemplate TargetType="Button">
- < Grid x:Name="RootElement">
- < Rectangle Width="{TemplateBinding Width}
" Height="{TemplateBinding Height}" - RadiusX="15" RadiusY="15">
- < Rectangle.Fill>
- < LinearGradientBrush StartPoint="0,0">
- < GradientStop Color="#FFFFFF" Offset="0.0" />
- < GradientStop Color="#EC04FA" Offset="1.0" />
- < /LinearGradientBrush>
- < /Rectangle.Fill>
- < Rectangle.Stroke>
- < LinearGradientBrush EndPoint="0.5,1"
StartPoint="0.5,0"> - < GradientStop Color="#EC04FA" Offset="0" />
- < GradientStop Color="#FFFFFF" Offset="1" />
- < /LinearGradientBrush>
- < /Rectangle.Stroke>
- < /Rectangle>
- < ContentPresenter
- Content="{TemplateBinding Content}"
- FontSize="{TemplateBinding FontSize}"
- HorizontalContentAlignment="
{TemplateBinding HorizontalContentAlignment}" - VerticalContentAlignment="{TemplateBinding
VerticalContentAlignment}" - Foreground="{TemplateBinding Foreground}">
- < /ContentPresenter>
- < /Grid>
- < /ControlTemplate>
- < /Setter.Value>
- < /Setter>
- < /Style>
这样在使用RoundButton时我们可以设定控件的文本及控件的大小:
- < Canvas Background="#46461F">
- < Button x:Name="button1"
Style="{StaticResource RoundButton}"- Canvas.Top="80" Canvas.Left="50"
- Content="提 交" FontSize="26"
- HorizontalContentAlignment="Center"
- VerticalContentAlignment="Center"
- Foreground="White" Width="200"
Height="60"/>- < Button x:Name="button2"
Style="{StaticResource RoundButton}"- Canvas.Top="80" Canvas.Left="260"
- Content="取 消" FontSize="26"
- HorizontalContentAlignment="Center"
- VerticalContentAlignment="Center"
- Foreground="White" Width="100"
Height="100"/>- < /Canvas>
以上就是Silverlight创建模板的相关操作方法。