diff --git a/samples/ControlCatalog/DecoratedWindow.xaml b/samples/ControlCatalog/DecoratedWindow.xaml
index 8e4c97b7f0..5251a2fa55 100644
--- a/samples/ControlCatalog/DecoratedWindow.xaml
+++ b/samples/ControlCatalog/DecoratedWindow.xaml
@@ -6,25 +6,21 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
diff --git a/samples/ControlCatalog/MainWindow.xaml b/samples/ControlCatalog/MainWindow.xaml
index 97bd88f5e4..6a70bb082f 100644
--- a/samples/ControlCatalog/MainWindow.xaml
+++ b/samples/ControlCatalog/MainWindow.xaml
@@ -16,47 +16,39 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
diff --git a/src/Avalonia.Controls/NativeMenuBar.cs b/src/Avalonia.Controls/NativeMenuBar.cs
index 63bb39108f..5d2e1087a7 100644
--- a/src/Avalonia.Controls/NativeMenuBar.cs
+++ b/src/Avalonia.Controls/NativeMenuBar.cs
@@ -1,7 +1,6 @@
using System;
using Avalonia.Controls.Primitives;
using Avalonia.Interactivity;
-using Avalonia.Styling;
namespace Avalonia.Controls
{
@@ -16,7 +15,7 @@ namespace Avalonia.Controls
EnableMenuItemClickForwardingProperty.Changed.Subscribe(args =>
{
var item = (MenuItem)args.Sender;
- if (args.NewValue.Equals(true))
+ if (args.NewValue.GetValueOrDefault())
item.Click += OnMenuItemClick;
else
item.Click -= OnMenuItemClick;
diff --git a/src/Avalonia.Controls/NativeMenuItem.cs b/src/Avalonia.Controls/NativeMenuItem.cs
index a0fec9e677..76197b62ad 100644
--- a/src/Avalonia.Controls/NativeMenuItem.cs
+++ b/src/Avalonia.Controls/NativeMenuItem.cs
@@ -2,6 +2,7 @@ using System;
using System.Windows.Input;
using Avalonia.Input;
using Avalonia.Media.Imaging;
+using Avalonia.Metadata;
using Avalonia.Utilities;
namespace Avalonia.Controls
@@ -62,6 +63,7 @@ namespace Avalonia.Controls
public static readonly DirectProperty MenuProperty =
AvaloniaProperty.RegisterDirect(nameof(Menu), o => o.Menu, (o, v) => o.Menu = v);
+ [Content]
public NativeMenu Menu
{
get => _menu;
@@ -151,7 +153,7 @@ namespace Avalonia.Controls
IsEnabled = _command?.CanExecute(null) ?? true;
}
- public bool HasClickHandlers => Clicked != null;
+ public bool HasClickHandlers => Click != null;
public ICommand Command
{
@@ -182,11 +184,21 @@ namespace Avalonia.Controls
set { SetValue(CommandParameterProperty, value); }
}
- public event EventHandler Clicked;
+ ///
+ /// Occurs when a is clicked.
+ ///
+ public event EventHandler Click;
+
+ [Obsolete("Use Click event.")]
+ public event EventHandler Clicked
+ {
+ add => Click += value;
+ remove => Click -= value;
+ }
void INativeMenuItemExporterEventsImplBridge.RaiseClicked()
{
- Clicked?.Invoke(this, new EventArgs());
+ Click?.Invoke(this, new EventArgs());
if (Command?.CanExecute(CommandParameter) == true)
{
diff --git a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs
index b192de95de..2e3408eca5 100644
--- a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs
+++ b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs
@@ -60,7 +60,7 @@ namespace Avalonia.Native
Header = "About Avalonia",
};
- aboutItem.Clicked += async (sender, e) =>
+ aboutItem.Click += async (sender, e) =>
{
var dialog = new AboutAvaloniaDialog();