12345678910111213141516171819202122232425262728293031323334 |
- using System.Reactive.Disposables;
- using Avalonia.Input;
- using Avalonia.Interactivity;
- namespace Avalonia.Xaml.Interactions.Custom;
- /// <summary>
- /// A behavior that allows to show control on tapped event.
- /// </summary>
- public class ShowOnTappedBehavior : ShowBehaviorBase
- {
- /// <summary>
- ///
- /// </summary>
- /// <param name="disposable"></param>
- protected override void OnAttachedToVisualTree(CompositeDisposable disposable)
- {
- var dispose = AssociatedObject?
- .AddDisposableHandler(
- Gestures.TappedEvent,
- AssociatedObject_Tapped,
- EventRoutingStrategy);
- if (dispose is not null)
- {
- disposable.Add(dispose);
- }
- }
- private void AssociatedObject_Tapped(object? sender, RoutedEventArgs e)
- {
- Show();
- }
- }
|