导出 (0) 打印
全部展开
此文章由机器翻译。 将光标移到文章的句子上,以查看原文。 更多信息。
译文
原文

Style 类

启用共享属性、资源和事件处理程序在类型的实例之间。

命名空间:  System.Windows
程序集:  PresentationFramework(在 PresentationFramework.dll 中)
XAML 的 XMLNS: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[ContentPropertyAttribute("Setters")]
[DictionaryKeyPropertyAttribute("TargetType")]
[LocalizabilityAttribute(LocalizationCategory.Ignore)]
public class Style : DispatcherObject, INameScope, 
	IAddChild, IQueryAmbient
<Style>
  Setters
</Style>

Style 类型公开以下成员。

  名称说明
公共方法Style()初始化 Style 类的新实例。
公共方法Style(Type)初始化 Style 类的新实例。在指定的 Type的使用。
公共方法Style(Type, Style)初始化 Style 类的新实例。在指定的 Type 的使用和基于指定的 Style
页首

  名称说明
公共属性BasedOn获取或设置为当前样式的基类型中定义的样式。
公共属性Dispatcher获取与此 DispatcherObject 关联的 Dispatcher (继承自 DispatcherObject。)
公共属性IsSealed获取一个值该样式是否是只读的,不能更改。
公共属性Resources获取或设置此样式的范围中,可以使用资源的集合。
公共属性Setters获取 SetterEventSetter 对象的集合。
公共属性TargetType获取或设置此样式的预期类型。
公共属性Triggers获取的 TriggerBase 对象的集合将根据指定的条件中的属性。
页首

  名称说明
公共方法CheckAccess确定调用线程是否可以访问此 DispatcherObject (继承自 DispatcherObject。)
公共方法Equals(Object)确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法Finalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法GetHashCode返回此 Style的哈希代码。 (重写 Object.GetHashCode()。)
公共方法GetType获取当前实例的 Type (继承自 Object。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法RegisterName新的名称对象在当前名称匹配的注册。
公共方法Seal不能即执行此样式和所有工厂和触发器,因此它们。
公共方法ToString返回表示当前对象的字符串。 (继承自 Object。)
公共方法UnregisterName从名称范围移除映射的名称对象。
公共方法VerifyAccess强制调用线程具有此 DispatcherObject 的访问权限。 (继承自 DispatcherObject。)
页首

  名称说明
显式接口实现私有方法IAddChild.AddChild基础结构。添加一个子对象。
显式接口实现私有方法IAddChild.AddText基础结构。添加节点的文本内容添加到对象。
显式接口实现私有方法INameScope.FindName基础结构。返回具有提供的标识符名称的对象。
显式接口实现私有方法IQueryAmbient.IsAmbientPropertyAvailable查询一个指定的单个属性是否可用在当前范围内。
页首

可以在从 FrameworkElementFrameworkContentElement派生的所有元素的 Style 样式通常声明为 Resources 部分中的资源。 由于样式是资源,它们遵守适用于所有资源的同一范围规则,因此,用于声明它可以应用的样式影响的位置。 如果为,则例如,您的声明在应用程序定义 XAML 文件的根元素的样式,该样式应用程序中的任何位置中。 如果在之一来创建导航应用程序并声明样式应用程序的 XAML 文件中,该样式在该 XAML 文件只能使用。 有关资源范围规则的更多信息,请参见 XAML 资源

样式声明包含一个或多 Setter 对象集合的 Style 对象。 Setter 包括 PropertyValue 属性是元素的属性的名称该样式是应用于。 在样式声明为资源后,它可以引用与其他资源。

说明说明

如果存在多个 setter 集合的 setter 具有相同 Property 属性值,最后声明使用的 setter。 同样,因此,如果您直接设置相同的属性的值在样式和在元素中,元素设置的值直接优先。

样式的 Windows Presentation Foundation (WPF) 和模板化模型允许维护和共享查找以及表示和逻辑的分离。 该样式和模板化模型包含使您可以自定义 UI功能的套件。 以下功能套件包括 Style 类以及示:

有关更多信息,请参见 样式设置和模板化

下面的示例演示将影响 ControlBackground 属性样式的说明。


<Style x:Key="Style1">
  <Setter Property="Control.Background" Value="Yellow"/>
</Style>


若要将上面的样式,请执行以下操作:


<Label Content="Yellow Background" Style="{StaticResource Style1}" />


使用 TargetType 属性,还可以将样式应用于特定类型的所有元素。 添加目标类型给样式意味着您必须完全限定不再将与 ClassName.PropertyName 语法的属性。 下面的示例定义要应用于每个 TextBlock 元素中的样式。


<Style TargetType="{x:Type TextBlock}">
  <Setter Property="FontFamily" Value="Segoe Black" />
  <Setter Property="HorizontalAlignment" Value="Center" />
  <Setter Property="FontSize" Value="12pt" />
  <Setter Property="Foreground" Value="#777777" />
</Style>


说明说明

许多 WPF 控件包括,因此创建适用于类型的所有控件可以具有广泛的影响的样式的其他 WPF 控件的组合。 例如,因此,如果创建面向 CanvasTextBlock 控件中的样式,该样式会应用于画布的所有 TextBlock 控件,因此,即使 TextBlock 是另一个控件的一部分,如 ListBox

有关如何从已定义的样式扩展或继承的信息,请参见 BasedOn 页。

.NET Framework

受以下版本支持:4.5、4、3.5、3.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服务器核心角色), Windows Server 2008 R2(支持带 SP1 或更高版本的服务器核心角色;不支持 Itanium)

并不是.NET Framework 对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求.

此类型的任何公共static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

社区附加资源

添加
显示:
© 2015 Microsoft