EventSetter 클래스

정의

스타일에서 이벤트 setter를 나타냅니다.Represents an event setter in a style. 이벤트 setter는 이벤트에 대한 응답으로 지정된 이벤트 처리기를 호출합니다.Event setters invoke the specified event handlers in response to events.

public ref class EventSetter : System::Windows::SetterBase
public class EventSetter : System.Windows.SetterBase
type EventSetter = class
    inherit SetterBase
Public Class EventSetter
Inherits SetterBase
상속
EventSetter

예제

다음 예제에서는 단일 설정 EventSetter 페이지 수준 스타일 내에서.The following example establishes a single EventSetter within a page-level 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>

이 예제에서는 이벤트 처리기는 다음과 같습니다.The following shows the example event handlers:

void b1SetColor(object sender, RoutedEventArgs e)
{
  Button b = e.Source as Button;
  b.Background = new SolidColorBrush(Colors.Azure);
}

void HandleThis(object sender, RoutedEventArgs e)
{
  e.Handled=true;
}
Private Sub b1SetColor(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Dim b As Button = TryCast(e.Source, Button)
  b.Background = New SolidColorBrush(Colors.Azure)
End Sub

Private Sub HandleThis(ByVal sender As Object, ByVal e As RoutedEventArgs)
  e.Handled=True
End Sub

설명

참조 하는 모든 요소에 적용 되는 라우트된 이벤트에 대 한 응답에서 지정 된 이벤트 처리기를 호출 하는 이벤트 setter는 Style 각 개별 요소에 인스턴스 처리기를 연결 하도록 요구 하지 않고 있습니다.Event setters invoke the specified event handlers in response to routed events, which apply to all elements that reference the Style rather than requiring you to attach instance handlers to each individual element. Style.Setters 지원 EventSetter 개체입니다.Only Style.Setters support EventSetter objects.

이벤트는 라우트된 이벤트에 대 한 이벤트 setter만 선언할 수 있습니다.You can only declare event setters for events that are routed events. 이벤트 버블링 또는 터널링 이벤트는 직접 라우팅 전략을 사용 하 여 라우트된 이벤트에 대 한 이벤트 setter를 선언할 수 있습니다.You can declare event setters for routed events with a direct routing strategy, bubbling events, or tunneling events.

인스턴스를 EventSetter 클래스를 통해 일반적으로 만들어집니다 XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML)스타일 내에서 개체 요소를 통해 정의 된 대로 XAMLXAML입니다.Instances of the EventSetter class are usually created through XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML), as an object element within a style defined through XAMLXAML. EventSetter 코드에서 인스턴스화될 수 있습니다.An EventSetter might also be instantiated from code.

테마 리소스 사전에 포함 된 스타일에서 이벤트 setter는 사용할 수 없습니다.Event setters cannot be used in a style that is contained in a theme resource dictionary. 런타임 시 테마 리소스 사전을 느슨한 경우가 때문에 이것이 BAML(이진 XAML)binary XAML (BAML) 파일과 없는 범위 정의 관련 처리기를 정의 하는 코드 숨김이 존재할 수 있습니다.This is because a theme resource dictionary at run time is often loose BAML(이진 XAML)binary XAML (BAML) files, and does not have any scope defined where accompanying code-behind that defines the handlers can exist.

이벤트에 대 한 클래스 처리기 뒤와 인스턴스 처리기 이벤트 setter를 통해 연결 하는 처리기가 호출 됩니다.Handlers attached through event setters are invoked after any class handlers for an event, and also after any instance handlers. 결과적으로 클래스 처리기 나 인스턴스 처리기는 해당 인수에서 이벤트를 처리를 표시할 경우 다음에서 이벤트 setter를 선언 하는 처리기가 호출 되지 이벤트 setter를 구체적으로 설정 하지 않는 경우 HandledEventsToo true합니다.As a result, if a class handler or instance handler marks an event handled in its arguments, then the handler declared by an event setter is not invoked, unless the event setter specifically sets HandledEventsToo true.

이벤트 setter에서 제공 될 수도 있습니다 BasedOn 스타일입니다.Event setters may also come from BasedOn styles. 으로 지정 된 스타일에서 이벤트 setter 처리기 BasedOn 즉시 스타일에 대 한 처리기를 이후에 호출 됩니다.The event setter handlers from the style specified as BasedOn will be invoked after the handlers on the immediate style.

에서만 Style.Setters 지원 EventSetter 개체입니다.Note that only Style.Setters supports EventSetter objects. 트리거 (TriggerBase 파생 클래스) 지원 하지 않는 EventSetter합니다.Triggers (TriggerBase and derived classes) do not support EventSetter.

생성자

EventSetter()

EventSetter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the EventSetter class.

EventSetter(RoutedEvent, Delegate)

제공된 이벤트 및 처리기 매개 변수를 사용하여 EventSetter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the EventSetter class, using the provided event and handler parameters.

속성

Event

EventSetter에서 응답하는 특정 라우트된 이벤트를 가져오거나 설정합니다.Gets or sets the particular routed event that this EventSetter responds to.

HandledEventsToo

이벤트 데이터에서 이벤트가 처리된 것으로 표시된 경우에도 setter에 할당된 처리기를 호출해야 하는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that determines whether the handler assigned to the setter should still be invoked, even if the event is marked handled in its event data.

Handler

setter의 라우트된 이벤트에 대한 처리기 참조를 가져오거나 설정합니다.Gets or sets the reference to a handler for a routed event in the setter.

IsSealed

이 개체가 변경 불가능한 상태인지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether this object is in an immutable state.

(다음에서 상속됨 SetterBase)

메서드

CheckSealed()

이 개체가 읽기 전용이고 변경될 수 없는지 확인합니다.Checks whether this object is read-only and cannot be changed.

(다음에서 상속됨 SetterBase)
Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상

추가 정보