EventSetter Klasa

Definicja

Reprezentuje metodę ustawiającą zdarzenia w stylu.Represents an event setter in a style. Metody ustawiające zdarzenia wywołują określone programy obsługi zdarzeń w odpowiedzi na zdarzenia.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
Dziedziczenie
EventSetter

Przykłady

Poniższy przykład określa pojedynczy EventSetter w stylu na poziomie strony.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>

Poniżej przedstawiono przykładowe programy obsługi zdarzeń: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

Uwagi

Metody ustawiające zdarzenia wywołują określone programy obsługi zdarzeń w odpowiedzi na zdarzenia kierowane, które mają zastosowanie do wszystkich elementów, które odwołują się do Style obiektu, a nie wymagają dołączenia obsługi wystąpień do poszczególnych elementów.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.SettersObsługuje tylko EventSetter obiekty.Only Style.Setters support EventSetter objects.

Metody ustawiające zdarzenia można zadeklarować tylko dla zdarzeń, które są zdarzeniami kierowanymi.You can only declare event setters for events that are routed events. Można zadeklarować metody ustawiające zdarzenia dla zdarzeń kierowanych za pomocą strategii routingu bezpośredniego, zdarzenia propagacji lub zdarzenia tunelowania.You can declare event setters for routed events with a direct routing strategy, bubbling events, or tunneling events.

Wystąpienia EventSetter klasy są zwykle tworzone za pomocą Extensible Application Markup Language (XAML) jako element obiektu w stylu zdefiniowanym za pomocą języka XAML.Instances of the EventSetter class are usually created through Extensible Application Markup Language (XAML), as an object element within a style defined through XAML. Można EventSetter również utworzyć wystąpienie z kodu.An EventSetter might also be instantiated from code.

Metod ustawiających zdarzenia nie można używać w stylu, który jest zawarty w słowniku zasobów motywu.Event setters cannot be used in a style that is contained in a theme resource dictionary. Wynika to z faktu, że słownik zasobów motywu w czasie wykonywania jest często luźno binarnymi plikami języka XAML (BAML) i nie ma żadnego zakresu zdefiniowanego w oddzielnym kodzie, który definiuje programy obsługi.This is because a theme resource dictionary at run time is often loose binary XAML (BAML) files, and does not have any scope defined where accompanying code-behind that defines the handlers can exist.

Procedury obsługi dołączone przy użyciu metod ustawiających zdarzenia są wywoływane po dowolnych obiektach obsługi zdarzenia, a także po dowolnych wystąpieniach.Handlers attached through event setters are invoked after any class handlers for an event, and also after any instance handlers. W związku z tym, jeśli obsługa klasy lub procedura obsługi wystąpienia oznacza zdarzenie obsługiwane w jego argumentach, wówczas procedura obsługi zadeklarowana przez metodę ustawiającą zdarzenia nie jest wywoływana, chyba że Metoda ustawiająca zdarzenia jawnie 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.

Metody ustawiające zdarzenia mogą również pochodzić ze BasedOn stylów.Event setters may also come from BasedOn styles. Programy obsługi metody ustawiającej zdarzenia z stylu określonego jako BasedOn będą wywoływane po obsłudze w stylu bezpośrednim.The event setter handlers from the style specified as BasedOn will be invoked after the handlers on the immediate style.

Należy pamiętać, że program Style.Setters obsługuje tylko EventSetter obiekty.Note that only Style.Setters supports EventSetter objects. Wyzwalacze ( TriggerBase i klasy pochodne) nie obsługują EventSetter .Triggers (TriggerBase and derived classes) do not support EventSetter.

Konstruktory

EventSetter()

Inicjuje nowe wystąpienie klasy EventSetter.Initializes a new instance of the EventSetter class.

EventSetter(RoutedEvent, Delegate)

Inicjuje nowe wystąpienie EventSetter klasy przy użyciu podanych zdarzeń i parametrów procedury obsługi.Initializes a new instance of the EventSetter class, using the provided event and handler parameters.

Właściwości

Event

Pobiera lub ustawia określone zdarzenie kierowane, na które EventSetter odpowiada.Gets or sets the particular routed event that this EventSetter responds to.

HandledEventsToo

Pobiera lub ustawia wartość określającą, czy program obsługi przypisany do metody ustawiającej powinien być nadal wywoływany, nawet jeśli zdarzenie jest oznaczone jako obsługiwane w danych zdarzenia.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

Pobiera lub ustawia odwołanie do procedury obsługi dla zdarzenia kierowanego w metodzie ustawiającej.Gets or sets the reference to a handler for a routed event in the setter.

IsSealed

Pobiera wartość wskazującą, czy ten obiekt jest w niezmiennym stanie.Gets a value that indicates whether this object is in an immutable state.

(Odziedziczone po SetterBase)

Metody

CheckSealed()

Sprawdza, czy ten obiekt jest tylko do odczytu i nie można go zmienić.Checks whether this object is read-only and cannot be changed.

(Odziedziczone po SetterBase)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Dotyczy

Zobacz też