Files
StructureHelper/Infrastructure/EventTriggerBase.cs
NickAppLab 60eb406cbe Init commit
2022-06-13 21:24:13 +05:00

25 lines
676 B
C#

using System;
using System.Windows;
using EventTrigger = System.Windows.Interactivity.EventTrigger;
namespace StructureHelper
{
public class EventTriggerBase<T> : EventTrigger where T : RoutedEventArgs
{
readonly Predicate<T> eventTriggerPredicate;
public EventTriggerBase(Predicate<T> eventTriggerPredicate)
{
this.eventTriggerPredicate = eventTriggerPredicate;
}
protected override void OnEvent(EventArgs eventArgs)
{
if (eventArgs is T e && eventTriggerPredicate(e))
{
base.OnEvent(eventArgs);
e.Handled = true;
}
}
}
}