diff --git a/src/Avalonia.Controls/Primitives/ToggleButton.cs b/src/Avalonia.Controls/Primitives/ToggleButton.cs
index 148797c53a..93ec17f0ca 100644
--- a/src/Avalonia.Controls/Primitives/ToggleButton.cs
+++ b/src/Avalonia.Controls/Primitives/ToggleButton.cs
@@ -32,20 +32,37 @@ namespace Avalonia.Controls.Primitives
///
/// Defines the event.
///
+ [Obsolete("Use IsCheckedChangedEvent instead.")]
public static readonly RoutedEvent CheckedEvent =
- RoutedEvent.Register(nameof(Checked), RoutingStrategies.Bubble);
+ RoutedEvent.Register(
+ nameof(Checked),
+ RoutingStrategies.Bubble);
///
/// Defines the event.
///
+ [Obsolete("Use IsCheckedChangedEvent instead.")]
public static readonly RoutedEvent UncheckedEvent =
- RoutedEvent.Register(nameof(Unchecked), RoutingStrategies.Bubble);
+ RoutedEvent.Register(
+ nameof(Unchecked),
+ RoutingStrategies.Bubble);
///
/// Defines the event.
///
+ [Obsolete("Use IsCheckedChangedEvent instead.")]
public static readonly RoutedEvent IndeterminateEvent =
- RoutedEvent.Register(nameof(Indeterminate), RoutingStrategies.Bubble);
+ RoutedEvent.Register(
+ nameof(Indeterminate),
+ RoutingStrategies.Bubble);
+
+ ///
+ /// Defines the event.
+ ///
+ public static readonly RoutedEvent IsCheckedChangedEvent =
+ RoutedEvent.Register(
+ nameof(IsCheckedChanged),
+ RoutingStrategies.Bubble);
private bool? _isChecked = false;
@@ -62,6 +79,7 @@ namespace Avalonia.Controls.Primitives
///
/// Raised when a is checked.
///
+ [Obsolete("Use IsCheckedChanged instead.")]
public event EventHandler? Checked
{
add => AddHandler(CheckedEvent, value);
@@ -71,6 +89,7 @@ namespace Avalonia.Controls.Primitives
///
/// Raised when a is unchecked.
///
+ [Obsolete("Use IsCheckedChanged instead.")]
public event EventHandler? Unchecked
{
add => AddHandler(UncheckedEvent, value);
@@ -80,12 +99,22 @@ namespace Avalonia.Controls.Primitives
///
/// Raised when a is neither checked nor unchecked.
///
+ [Obsolete("Use IsCheckedChanged instead.")]
public event EventHandler? Indeterminate
{
add => AddHandler(IndeterminateEvent, value);
remove => RemoveHandler(IndeterminateEvent, value);
}
+ ///
+ /// Raised when the property value changes.
+ ///
+ public event EventHandler? IsCheckedChanged
+ {
+ add => AddHandler(IsCheckedChangedEvent, value);
+ remove => RemoveHandler(IsCheckedChangedEvent, value);
+ }
+
///
/// Gets or sets whether the is checked.
///
@@ -182,13 +211,13 @@ namespace Avalonia.Controls.Primitives
switch (newValue)
{
case true:
- OnChecked(new RoutedEventArgs(CheckedEvent));
+ OnChecked(new RoutedEventArgs(IsCheckedChangedEvent));
break;
case false:
- OnUnchecked(new RoutedEventArgs(UncheckedEvent));
+ OnUnchecked(new RoutedEventArgs(IsCheckedChangedEvent));
break;
default:
- OnIndeterminate(new RoutedEventArgs(IndeterminateEvent));
+ OnIndeterminate(new RoutedEventArgs(IsCheckedChangedEvent));
break;
}
}