From eed3d84517a2d30c2632c95ca085553907f713b8 Mon Sep 17 00:00:00 2001 From: Michael Bucari-Tovo Date: Sun, 11 Dec 2022 19:21:49 -0700 Subject: [PATCH] Add context menu --- .../Views/ProductsDisplay.axaml | 7 +++++++ .../Views/ProductsDisplay.axaml.cs | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/Source/LibationAvalonia/Views/ProductsDisplay.axaml b/Source/LibationAvalonia/Views/ProductsDisplay.axaml index f29aa3a4..5c3748a3 100644 --- a/Source/LibationAvalonia/Views/ProductsDisplay.axaml +++ b/Source/LibationAvalonia/Views/ProductsDisplay.axaml @@ -44,6 +44,13 @@ diff --git a/Source/LibationAvalonia/Views/ProductsDisplay.axaml.cs b/Source/LibationAvalonia/Views/ProductsDisplay.axaml.cs index 1a4fae1d..bd4e7fae 100644 --- a/Source/LibationAvalonia/Views/ProductsDisplay.axaml.cs +++ b/Source/LibationAvalonia/Views/ProductsDisplay.axaml.cs @@ -10,6 +10,7 @@ using LibationAvalonia.Dialogs; using System; using System.Collections.Generic; using System.Linq; +using Avalonia.Interactivity; namespace LibationAvalonia.Views { @@ -184,6 +185,22 @@ namespace LibationAvalonia.Views #region Button Click Handlers + public void ContextMenuItem1_Click(object sender, Avalonia.Interactivity.RoutedEventArgs args) + { + var lbe = getBoundEntry(args.Source); + } + public void ContextMenuItem2_Click(object sender, Avalonia.Interactivity.RoutedEventArgs args) + { + var lbe = getBoundEntry(args.Source); + } + public void ContextMenuItem3_Click(object sender, Avalonia.Interactivity.RoutedEventArgs args) + { + var lbe = getBoundEntry(args.Source); + } + + private static LibraryBookEntry getBoundEntry(IInteractive source) + => (source is IStyledElement se && se.DataContext is LibraryBookEntry lbe ? lbe : null); + public void LiberateButton_Click(object sender, Avalonia.Interactivity.RoutedEventArgs args) { var button = args.Source as Button;