Style.Setters 属性

定义

获取 SetterEventSetter 对象的集合。Gets a collection of Setter and EventSetter objects.

public:
 property System::Windows::SetterBaseCollection ^ Setters { System::Windows::SetterBaseCollection ^ get(); };
public System.Windows.SetterBaseCollection Setters { get; }
member this.Setters : System.Windows.SetterBaseCollection
Public ReadOnly Property Setters As SetterBaseCollection

属性值

SetterBaseCollection

SetterEventSetter 对象的集合。A collection of Setter and EventSetter objects. 默认值为空集合。The default is an empty collection.

示例

下面的示例演示如何使用此属性。The following example shows how to use this property.

Style style = new Style(typeof(ListBoxItem));
style.Setters.Add(new Setter(ListBoxItem.HorizontalContentAlignmentProperty,
     HorizontalAlignment.Stretch));
ListBox lb = new ListBox();
lb.ItemContainerStyle = style;
ListBoxItem lbi1 = new ListBoxItem();
Button btn = new Button();
btn.Content = "Button as styled list box item.";
lbi1.Content = (btn);
lb.Items.Add(lbi1);
Dim style As Style = New Style()
style.Setters.Add(New Setter(ListBoxItem.HorizontalContentAlignmentProperty, _
     HorizontalAlignment.Stretch))
Dim lb As ListBox = New ListBox()
lb.ItemContainerStyle = style
Dim lbi1 As ListBoxItem = New ListBoxItem()
Dim btn As Button = New Button()
btn.Content = "Button as styled list box item."
lbi1.Content = (btn)
lb.Items.Add(lbi1)

SetterBase 子对象添加到 Style 对象会将该子级隐式添加到 SetterBaseCollection 对象的 StyleAdding a SetterBase child to a Style object implicitly adds it to the SetterBaseCollection for the Style object. 以下 EventSetter 内容将隐式添加到 SetterBaseCollection 样式的中:The following EventSetter is implicitly added to the SetterBaseCollection of the style:

<StackPanel
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="SDKSample.EventOvw2"
  Name="dpanel2"
  Initialized="PrimeHandledToo"
>
  <StackPanel.Resources>
    <Style TargetType="{x:Type Button}">
      <EventSetter Event="Click" Handler="b1SetColor"/>
    </Style>
  </StackPanel.Resources>
  <Button>Click me</Button>
  <Button Name="ThisButton" Click="HandleThis">
    Raise event, handle it, use handled=true handler to get it anyway.
  </Button>
</StackPanel>

注解

Setters对象的属性只能 Style 包含可分配给的对象 SetterBaseThe Setters property of a Style object can consist only of objects assignable to SetterBase. SetterBase 子对象添加到 Style 对象会将该子级隐式添加到 SetterBaseCollection 对象的 StyleAdding a SetterBase child to a Style object implicitly adds it to the SetterBaseCollection for the Style object.

的显式属性元素用法 Setters 也相对较常见。An explicit property element usage for Setters is also relatively common. 这是一种标记样式决策,有时有助于区分 Setters Resources 复杂样式中的和 Triggers 项。This is a markup style decision that can sometimes help distinguish Setters from Resources and Triggers items in a complex style. 例如:For example:

<Style>  
  <Style.Setters>  
    <!--one or more SetterBase derived object elements here-->  
  </Style.Setters>  
</Style>  

XAML 属性元素用法XAML Property Element Usage

<object>  
  oneOrMoreSetters  
</object>  

XAML 值XAML Values

oneOrMoreSettersoneOrMoreSetters
一个或多个 SetterEventSetter 对象。One or more Setter or EventSetter objects.

适用于

另请参阅