diff --git a/samples/ControlCatalog/MainView.xaml b/samples/ControlCatalog/MainView.xaml
index 3d869bb723..7beb496ab5 100644
--- a/samples/ControlCatalog/MainView.xaml
+++ b/samples/ControlCatalog/MainView.xaml
@@ -22,8 +22,8 @@
-
-
+
+
diff --git a/samples/ControlCatalog/Pages/ButtonPage.xaml b/samples/ControlCatalog/Pages/ButtonPage.xaml
deleted file mode 100644
index 2ce1469118..0000000000
--- a/samples/ControlCatalog/Pages/ButtonPage.xaml
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
- A button control
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/samples/ControlCatalog/Pages/ButtonsPage.xaml b/samples/ControlCatalog/Pages/ButtonsPage.xaml
new file mode 100644
index 0000000000..7de0872eae
--- /dev/null
+++ b/samples/ControlCatalog/Pages/ButtonsPage.xaml
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A standard button control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A button control with multiple states: checked, unchecked or indeterminate.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A button control that raises its Click event repeatedly when it is pressed and held.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A button with primary and secondary parts that can each be pressed separately. The primary part behaves like a Button and the secondary part opens a flyout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A button with primary and secondary parts that can each be pressed separately. The primary part behaves like a ToggleButton with two states and the secondary part opens a flyout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/ControlCatalog/Pages/ButtonPage.xaml.cs b/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs
similarity index 90%
rename from samples/ControlCatalog/Pages/ButtonPage.xaml.cs
rename to samples/ControlCatalog/Pages/ButtonsPage.xaml.cs
index 5e555c8c91..5594bab176 100644
--- a/samples/ControlCatalog/Pages/ButtonPage.xaml.cs
+++ b/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs
@@ -3,11 +3,11 @@ using Avalonia.Markup.Xaml;
namespace ControlCatalog.Pages
{
- public class ButtonPage : UserControl
+ public class ButtonsPage : UserControl
{
private int repeatButtonClickCount = 0;
- public ButtonPage()
+ public ButtonsPage()
{
InitializeComponent();
diff --git a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml
index 4db755b6fc..6afe6dd135 100644
--- a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml
+++ b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml
@@ -11,7 +11,7 @@
-
+
diff --git a/src/Avalonia.Controls/Button.cs b/src/Avalonia.Controls/Button.cs
index a2efc7fba0..a7a4759182 100644
--- a/src/Avalonia.Controls/Button.cs
+++ b/src/Avalonia.Controls/Button.cs
@@ -85,8 +85,8 @@ namespace Avalonia.Controls
///
/// Defines the property
///
- public static readonly StyledProperty FlyoutProperty =
- AvaloniaProperty.Register