RoutedEventArgs.Handled Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállít egy értéket, amely jelzi az útvonalon áthaladó esemény eseménykezelésének jelenlegi állapotát.
public:
property bool Handled { bool get(); void set(bool value); };
public bool Handled { [System.Security.SecurityCritical] get; [System.Security.SecurityCritical] set; }
public bool Handled { get; set; }
[<get: System.Security.SecurityCritical>]
[<set: System.Security.SecurityCritical>]
member this.Handled : bool with get, set
member this.Handled : bool with get, set
Public Property Handled As Boolean
Tulajdonság értéke
Ha be van állítva, állítsa be, hogy true az eseményt kezelni kell-e; ellenkező esetben false. Ha ezt az értéket olvassa, az azt jelzi, true hogy egy osztálykezelő vagy egy példánykezelő az útvonal mentén már megjelölte ezt az eseményt.
false.azt jelzi, hogy egy ilyen kezelő sem jelölte meg a kezelt eseményt.
Az alapértelmezett érték a false.
- Attribútumok
Példák
Az alábbi példa egy eseménykezelőt implementál, amely megjelöli a kezelt eseményt.
protected override void OnPreviewMouseRightButtonDown(System.Windows.Input.MouseButtonEventArgs e)
{
e.Handled = true; //suppress the click event and other leftmousebuttondown responders
MyEditContainer ec = (MyEditContainer)e.Source;
if (ec.EditState)
{ ec.EditState = false; }
else
{ ec.EditState = true; }
base.OnPreviewMouseRightButtonDown(e);
}
Protected Overrides Sub OnPreviewMouseRightButtonDown(ByVal e As System.Windows.Input.MouseButtonEventArgs)
e.Handled = True 'suppress the click event and other leftmousebuttondown responders
Dim ec As MyEditContainer = CType(e.Source, MyEditContainer)
If ec.EditState Then
ec.EditState = False
Else
ec.EditState = True
End If
MyBase.OnPreviewMouseRightButtonDown(e)
End Sub
Megjegyzések
A kezelt esemény megjelölése korlátozza az irányított esemény láthatóságát a figyelők számára az eseményútvonal mentén. Az esemény továbbra is az útvonal fennmaradó részét érinti, de válaszként csak a HandledEventsToo metódushívásban kifejezetten hozzáadott trueAddHandler(RoutedEvent, Delegate, Boolean) kezelők lesznek meghívva. A példányfigyelők alapértelmezett kezelői (például az Extensible Application Markup Language (XAML)) nem lesznek meghívva. A kezeltként megjelölt események kezelése nem gyakori forgatókönyv.
Ha Ön a saját eseményeit meghatározó vezérlőelem-szerző, az osztályszintű eseménykezeléssel kapcsolatos döntések hatással lesznek a vezérlő felhasználóira, valamint a származtatott vezérlők felhasználóira, valamint a vezérlő által tartalmazott vagy a vezérlőt tartalmazó egyéb elemekre. További információ: Az irányított események megjelölése kezeltként és osztálykezelés.
Nagyon ritka esetekben célszerű kezelni a megjelölt eseményeketHandled, és módosítani az eseményargumentumokattrueHandled.false Erre szükség lehet a vezérlők bemeneti eseményeinek bizonyos területein, például az alacsony és a magas szintű bemeneti események kezelésének kulcskezelésében KeyDownTextInput , és mindegyik más útválasztási stratégiával próbál dolgozni.