diff --git a/src/Avalonia.Controls/Button.cs b/src/Avalonia.Controls/Button.cs
index e94d00b2ff..91eef3947b 100644
--- a/src/Avalonia.Controls/Button.cs
+++ b/src/Avalonia.Controls/Button.cs
@@ -30,7 +30,7 @@ namespace Avalonia.Controls
/// A button control.
///
[PseudoClasses(":pressed")]
- public class Button : ContentControl
+ public class Button : ContentControl, ICommandSource
{
///
/// Defines the property.
@@ -492,5 +492,7 @@ namespace Avalonia.Controls
{
PseudoClasses.Set(":pressed", isPressed);
}
+
+ void ICommandSource.CanExecuteChanged(object sender, EventArgs e) => this.CanExecuteChanged(sender, e);
}
}
diff --git a/src/Avalonia.Controls/MenuItem.cs b/src/Avalonia.Controls/MenuItem.cs
index 7d4fef009d..d034f54df2 100644
--- a/src/Avalonia.Controls/MenuItem.cs
+++ b/src/Avalonia.Controls/MenuItem.cs
@@ -22,7 +22,7 @@ namespace Avalonia.Controls
/// A menu item control.
///
[PseudoClasses(":separator", ":icon", ":open", ":pressed", ":selected")]
- public class MenuItem : HeaderedSelectingItemsControl, IMenuItem, ISelectable
+ public class MenuItem : HeaderedSelectingItemsControl, IMenuItem, ISelectable, ICommandSource
{
///
/// Defines the property.
@@ -609,6 +609,8 @@ namespace Avalonia.Controls
SelectedItem = null;
}
+ void ICommandSource.CanExecuteChanged(object sender, EventArgs e) => this.CanExecuteChanged(sender, e);
+
///
/// A dependency resolver which returns a .
///