通过


FrameworkContentElement.Style 属性

定义

获取或设置此元素要使用的样式。

public:
 property System::Windows::Style ^ Style { System::Windows::Style ^ get(); void set(System::Windows::Style ^ value); };
public System.Windows.Style Style { get; set; }
member this.Style : System.Windows.Style with get, set
Public Property Style As Style

属性值

元素的应用的非默认样式(如果存在)。 否则为 null。 默认构造 FrameworkContentElement 的默认值为 null

示例

以下示例在根元素上FlowDocument建立一个Resources集合,然后将其作为资源作为特定样式Paragraph引用。

<FlowDocument
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class=" SDKSample.Page2">
  <FlowDocument.Resources>
    <Style TargetType="{x:Type Paragraph}" x:Key="BluePara">
      <Setter Property="Background" Value="Blue"/>
      <Setter Property="FontSize" Value="18"/>
      <Setter Property="Foreground" Value="LightBlue"/>
      <Setter Property="FontFamily" Value="Trebuchet MS"/>
    </Style>
  </FlowDocument.Resources>
  <Paragraph Style="{StaticResource BluePara}">Lorem ipsum etc.</Paragraph>
</FlowDocument>

注解

当前样式通常由主题设置的默认样式提供,或者通常由页面或应用程序级别的资源应用于该类型的对象(隐式样式)。 此属性不设置或返回默认(主题)样式,但它确实返回隐式样式或显式样式。 对于隐式或显式样式,无论该样式是作为资源访问还是在本地定义,都无关紧要。

设置样式有一些限制。 可以随时将整个 Style 属性重置为新 Style 属性,这会强制重新组合布局。 但是,只要该样式被加载的元素使用, Style 就应考虑密封。 尝试更改正在使用样式的任何单个属性(如集合 Setters中的任何内容)会导致引发异常。 在标记中定义的样式在从资源字典(对于资源)加载或加载它中包含的页面(对于内联样式)后,就会被视为正在使用该样式。

Style 是具有特殊优先级的依赖属性。 本地集样式通常以属性系统中的最高优先级运行。 如果此时为 Style null,则加载属性系统期间会检查指定该类型的已定义资源是否为隐式样式。 如果此样式在此步骤后仍为 null,则样式来自默认(主题)样式,但不会在属性值中 Style 返回默认样式。 请参阅 Dependency 属性值优先级

XAML 属性用法

<object Style="{resourceExtension StyleResourceKey}"/>

XAML 值

resourceExtension 下列项之一:或。 请参阅 XAML 资源

styleResourceKey 标识所请求样式的键。 键是指 .. 中的 ResourceDictionary现有资源。

注释

属性元素语法在技术上是可能的,但不建议这样做。 请参阅 内联样式和模板。 使用 TemplateBindingBinding 绑定引用也可能是可能的,但并不常见。

Dependency 属性信息

物品 价值
标识符字段 StyleProperty
元数据属性设置为 true AffectsMeasure

适用于