FrameworkElement.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

属性值

Style

若存在,则为此元素适用的非默认样式。 否则为 null。 对于默认构造的 FrameworkElement,其默认值为 null

示例

以下示例定义资源字典中的样式。

<Page.Resources>
<Style TargetType="Border" x:Key="PageBackground">
  <Setter Property="Background" Value="Blue"/>
</Style>
<Border Style="{StaticResource PageBackground}">
</Border>

注解

对于控件,当前样式通常由默认样式提供,从控件主题,或者通常由页面或应用程序级别的资源应用于该类型的控件, (隐式样式) 。 此属性未设置或返回默认 (主题) 样式,但它会返回隐式样式或对元素执行操作的显式样式。 对于隐式或显式样式,无论样式是指定为资源还是在本地定义,都无关紧要。

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

Style 是具有特殊优先级的依赖属性。 本地集样式通常以属性系统中的最高优先级运行。 如果此时为 Style null,则加载属性系统期间会检查指定该类型的本地或应用程序资源中的隐式样式。 如果此步骤后样式仍为 null,则表示用途的代理样式通常来自默认 (主题) 样式,但默认样式不会在属性值中 Style 返回。 请参阅 依赖属性值优先级样式设置和模板化

XAML 属性用法

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

XAML 属性元素用法

XAML 值

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

styleResourceKey
标识所请求样式的键。 该键引用了一个 ResourceDictionary. 中的现有资源。

备注

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

依赖项属性信息

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

适用于