样式
属性样式 内联样式 引用样式
属性样式
类似于在HTML中直接通过HTML元素属性设置的样式
适用于复用度不高的一些属性
内联样式
内联样式和模板的限制
在中 可扩展应用程序标记语言 (XAML) ,样式和模板属性在技术上可以通过以下两种方
式之一进行设置。 您可以使用特性语法(属性语法)来引用资源中定义的样式,例如 < 对
象 Style="{StaticResource myResourceKey }" .../> 。 或者,可以使用属性元素语法来
定义内联样式
在资源中以内联方式定义且未在资源中定义的样式必须仅限于包含元素,因为它没有资源键,所以不能轻易地重新使用。 通常,资源定义的样式更通用并且有用,更多的是将 Windows Presentation Foundation (WPF) 程序逻辑与代码中的程序逻辑分离在标记中的常规编程模型原则。
通常,即使只是要在该位置使用该样式或模板,也没有理由设置样式或模板。 大多数可以采用样式或模板的元素也支持 content 属性和内容模型。 如果只使用通过样式设置或模板化一次创建的任何逻辑树,只需在直接标记中使用等效的子元素填充该内容属性即可。 这会完全跳过样式和模板机制。
对于样式和模板,也可以通过返回对象的标记扩展启用其他语法。 可能的两种扩展插件都包含 TemplateBinding 和 Binding 。
内联样式
实际上是设置元素的Style属性
若内联样式与属性样式对同一属性进行设置,以属性设置的样式为准
引用样式
资源字典可在多处定义,因此引用样式也可以在多处定义
引用样式可以分为:
页面级样式
应用程序级样式
页面级样式(写在页面上)
页面级样式定义在页面的资源字典中,作用范围为整个页面
应用程序级样式(写在App.xaml里面)
与页面级样式的定义方式和应用方式相同,差别有两个方面:
定义位置不同
作用范围不同