Setter 类

定义

表示应用属性值的 setter。

public ref class Setter : System::Windows::SetterBase
public ref class Setter : System::Windows::SetterBase, System::ComponentModel::ISupportInitialize
public class Setter : System.Windows.SetterBase
[System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")]
[System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")]
public class Setter : System.Windows.SetterBase, System.ComponentModel.ISupportInitialize
[System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")]
[System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")]
[System.Windows.Markup.ContentProperty("Value")]
public class Setter : System.Windows.SetterBase, System.ComponentModel.ISupportInitialize
type Setter = class
    inherit SetterBase
[<System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")>]
[<System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")>]
type Setter = class
    inherit SetterBase
    interface ISupportInitialize
[<System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")>]
[<System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")>]
[<System.Windows.Markup.ContentProperty("Value")>]
type Setter = class
    inherit SetterBase
    interface ISupportInitialize
Public Class Setter
Inherits SetterBase
Public Class Setter
Inherits SetterBase
Implements ISupportInitialize
继承
属性
实现

示例

以下示例定义将应用于每个 TextBlock 元素的 Style。 此 Style 使用 Setter将值应用于多个 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>

以下示例显示了可用于 Button 控件的命名 StyleStyle 定义一个 Trigger 元素,该元素在 trueIsPressed 属性时更改按钮的 Foreground 属性。

<Style x:Key="Triggers" TargetType="Button">
    <Style.Triggers>
    <Trigger Property="IsPressed" Value="true">
        <Setter Property = "Foreground" Value="Green"/>
    </Trigger>
    </Style.Triggers>
</Style>

注解

Style和不同类型的触发器(从 TriggerBase继承的类)使用 Setter来应用属性值。

必须为 setter 指定 Setter 上的 PropertyValue 属性才能有意义。 在 .NET 8 和更早版本中,如果未设置一个或两个属性,则会引发异常。

内容模型: .NET 9 及更高版本中,Setter 的内容属性是 Value的,可以选择将 Value 指定为属性。

构造函数

Setter()

初始化 Setter 类的新实例。

Setter(DependencyProperty, Object)

使用指定的属性和值初始化 Setter 类的新实例。

Setter(DependencyProperty, Object, String)

使用指定的属性、值和目标名称初始化 Setter 类的新实例。

属性

IsSealed

获取一个值,该值指示此对象是否处于不可变状态。

(继承自 SetterBase)
Property

获取或设置将应用 Value 的属性。

TargetName

获取或设置此 Setter 所面向的对象的名称。

Value

获取或设置要应用于由此 Setter指定的属性的值。

方法

CheckSealed()

检查此对象是否为只读且无法更改。

(继承自 SetterBase)
Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
ReceiveMarkupExtension(Object, XamlSetMarkupExtensionEventArgs)

处理标记扩展为 Setter 对象的属性提供值的情况。

ReceiveTypeConverter(Object, XamlSetTypeConverterEventArgs)

处理类型转换器为 Setter 对象的属性提供值的情况。

ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

显式接口实现

ISupportInitialize.BeginInit()

指示初始化正在启动的对象。

ISupportInitialize.EndInit()

向对象发出初始化完成的信号。

适用于

另请参阅