SilverLight样式表继承

作者:互联网   出处:控件中国网   2014-11-05 19:20:58   阅读:1

SilverLight样式表继承

SilverLight样式表继承与Css样式表继承很相似,只不过是语法结构不同而已。SilverLight功能更强大。

还是举最简单的例子,开启这扇大门:

新建文件:

\Style\Main.xaml:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation">
    <Style x:Key="button1" TargetType="Button">
        <Setter Property="Background" Value="Black"/>
        <Setter Property="Foreground" Value="Blue"/>
        <Setter Property="Margin" Value="20"/>
    </Style>
</ResourceDictionary>

 
APP.xaml:

<Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>


      <!--引用外部样式表-->
                <ResourceDictionary Source="Style/Main.xaml"></ResourceDictionary>
                </ResourceDictionary.MergedDictionaries>


                 <!--在这里也可定义其它样式表例如-->

                  <Style x:Key="button2" TargetType="Button"  BasedOn="{StaticResource button1}">
              <Setter Property="Foreground" Value="Red"/>
        </Style>

        </ResourceDictionary>
</Application.Resources>

MainPage.xaml

 <UserControl.Resources>
        <Style x:Key="button3" TargetType="Button" BasedOn="{StaticResource button2}">
            <Setter Property="FontSize" Value="99"/>
        </Style>

 </UserControl.Resources>

 

<Button Content="Button" Style="{StaticResource button3}"  HorizontalAlignment="Left" VerticalAlignment="Top" />


运行结果可以看到所有样式都加载到Button中。OK!

继承顺序:

Main.xaml--APP.xaml--MainPage.xaml

Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat