zoukankan      html  css  js  c++  java
  • WPF笔记(8)样式(Styles)

          开发人员和设计人员使用样式可以对其产品的特定外观进行标准化。WPF 提供了一个强大的样式模型,其基础是 Style元素。

         虽然Resource对于在XAML中定义对象的属性十分有用。但是Resource段的主要目的还是用来定义Styles。Styles是应用在元素上的属性值的基本集合。它可以具有批处理功能,能够弥补单一的Resource属性无法在XAML中应用到多个元素的不足。例如,Page中含有大量的button,我们希望这些button都使用一些相同的属性。我们可以将这些属性定义为一个Style,然后将这个style应用到所有的button。WPF中的style还可以处理属性的变化,这些变化可能来自其他属性的触发,也可能来自事件。

         Styles类属于System.Windows命名空间。它从Object继承,并且没有子继承。

         Style放在资源里,因为Style是“批处理”的资源,它可以修改多个对象的属性值,不从属于单独的元素对象。

    TargetType 属性 (Property) 和 x:Key 属性 (Attribute) 的关系

          Styles有一个属性:x:Key属性,如果定义了此属性,就相当于是在资源中定义了一个名称为x:Key设定值的Style对象。如果没有定义此属性,那么这个Style将对属于这个Window中所有该控件类型生效。起到了批处理的效果。如:    

          如果将TargetType属性设置为 具体值(如TextBlock) 而不为样式分配 x:Key,样式就会应用于所有TextBlock元素。这种情况下,x:Key 隐式设置为 {x:Type TextBlock}。这意味着,如果将 x:Key 值显式设置为 {x:Type TextBlock} 之外的任何值,Style就不会自动应用于所有 TextBlock元素。此时,必须通过使用 x:Key 值,将样式显式应用于 TextBlock元素。如果样式位于资源部分,并且未设置样式的 TargetType属性,则必须提供 x:Key

    Setters

         Style的最重要的属性是Setters。Setters是Setter和EventSetter等对象的集合。这些对象被称作“Setters”因为他们用来设置属性和事件处理的结果。

         Setter是Style的内容属性。如:

    <Style ...>
        <Setter Property="Control.FontSize" Value="24" />
        <EventSetter ... />
        <Setter ... />
    </Style>

         msdn:http://msdn.microsoft.com/zh-cn/library/ms745683.aspx

  • 相关阅读:
    百度地图-放大地图
    haroxy hdr
    haproxy path_beg
    haproxy /admin跳转 不会在接口上再次加上admin
    api 跳转规则
    如何利用BI搭建电商数据分析平台
    如何利用BI搭建电商数据分析平台
    北向接口与南向接口
    perl 传递对象到模块
    mysql 监控 大批量的插入,删除,和修改
  • 原文地址:https://www.cnblogs.com/jyz/p/1296074.html
Copyright © 2011-2022 走看看