EventSetter 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
스타일의 이벤트 setter를 나타냅니다. 이벤트 setter는 이벤트에 대한 응답으로 지정된 이벤트 처리기를 호출합니다.
public ref class EventSetter : System::Windows::SetterBase
public class EventSetter : System.Windows.SetterBase
type EventSetter = class
inherit SetterBase
Public Class EventSetter
Inherits SetterBase
- 상속
예제
다음 예제에서는 페이지 수준 스타일 내에서 단일 EventSetter 설정합니다.
<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>
다음은 예제 이벤트 처리기를 보여 줍니다.
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 참조하는 모든 요소에 적용되는 라우트된 이벤트에 대한 응답으로 지정된 이벤트 처리기를 호출합니다. Style.Setters EventSetter 개체만 지원합니다.
라우트된 이벤트에 대해서만 이벤트 setter를 선언할 수 있습니다. 직접 라우팅 전략, 버블링 이벤트 또는 터널링 이벤트를 사용하여 라우트된 이벤트에 대한 이벤트 setter를 선언할 수 있습니다.
EventSetter 클래스의 인스턴스는 일반적으로 XAML(Extensible Application Markup Language)을 통해 XAML을 통해 정의된 스타일 내의 개체 요소로 만들어집니다. 코드에서 EventSetter 인스턴스화될 수도 있습니다.
테마 리소스 사전에 포함된 스타일에서는 이벤트 setter를 사용할 수 없습니다. 런타임에 테마 리소스 사전은 종종 BAML(이진 XAML) 파일이 느슨하고 처리기를 정의하는 코드 숨김이 있을 수 있는 범위가 정의되어 있지 않기 때문입니다.
이벤트 setter를 통해 연결된 처리기는 이벤트에 대한 클래스 처리기 뒤와 인스턴스 처리기 후에 호출됩니다. 따라서 클래스 처리기 또는 인스턴스 처리기가 해당 인수에서 처리된 이벤트를 표시하는 경우 이벤트 setter가 특별히 HandledEventsTootrue
설정하지 않는 한 이벤트 setter에 의해 선언된 처리기는 호출되지 않습니다.
이벤트 setter는 BasedOn 스타일에서 올 수도 있습니다. BasedOn 지정된 스타일의 이벤트 setter 처리기는 직접 실행 스타일의 처리기 다음에 호출됩니다.
Style.Setters EventSetter 개체만 지원합니다. 트리거(TriggerBase 및 파생 클래스)는 EventSetter지원하지 않습니다.
생성자
EventSetter() |
EventSetter 클래스의 새 인스턴스를 초기화합니다. |
EventSetter(RoutedEvent, Delegate) |
제공된 이벤트 및 처리기 매개 변수를 사용하여 EventSetter 클래스의 새 인스턴스를 초기화합니다. |
속성
Event |
이 EventSetter 응답하는 특정 라우트된 이벤트를 가져오거나 설정합니다. |
HandledEventsToo |
이벤트가 이벤트 데이터에서 처리된 것으로 표시된 경우에도 setter에 할당된 처리기를 계속 호출할지 여부를 결정하는 값을 가져오거나 설정합니다. |
Handler |
setter에서 라우트된 이벤트에 대한 처리기에 대한 참조를 가져오거나 설정합니다. |
IsSealed |
이 개체가 변경할 수 없는 상태인지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 SetterBase) |
메서드
CheckSealed() |
이 개체가 읽기 전용이며 변경할 수 없는지 확인합니다. (다음에서 상속됨 SetterBase) |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 사용됩니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
적용 대상
추가 정보
.NET