EventTriggerBase`1.cs 529 B

1234567891011121314151617181920
  1. namespace HandyControl.Interactivity;
  2. public abstract class EventTriggerBase<T> : EventTriggerBase where T : class
  3. {
  4. protected EventTriggerBase() : base(typeof(T))
  5. {
  6. }
  7. protected virtual void OnSourceChanged(T oldSource, T newSource)
  8. {
  9. }
  10. internal sealed override void OnSourceChangedImpl(object oldSource, object newSource)
  11. {
  12. base.OnSourceChangedImpl(oldSource, newSource);
  13. OnSourceChanged(oldSource as T, newSource as T);
  14. }
  15. public new T Source => (T) base.Source;
  16. }