diff --git a/src/Avalonia.Controls.DataGrid/DataGrid.cs b/src/Avalonia.Controls.DataGrid/DataGrid.cs
index 95ee73be4e..5d71a499e3 100644
--- a/src/Avalonia.Controls.DataGrid/DataGrid.cs
+++ b/src/Avalonia.Controls.DataGrid/DataGrid.cs
@@ -2215,7 +2215,14 @@ namespace Avalonia.Controls
/// PointerWheelEventArgs
protected override void OnPointerWheelChanged(PointerWheelEventArgs e)
{
- e.Handled = e.Handled || UpdateScroll(e.Delta * DATAGRID_mouseWheelDelta);
+ if(UpdateScroll(e.Delta * DATAGRID_mouseWheelDelta))
+ {
+ e.Handled = true;
+ }
+ else
+ {
+ e.Handled = e.Handled || !ScrollViewer.GetIsScrollChainingEnabled(this);
+ }
}
internal bool UpdateScroll(Vector delta)
diff --git a/src/Avalonia.Controls/Button.cs b/src/Avalonia.Controls/Button.cs
index 8537c9acbc..ce41b90bb0 100644
--- a/src/Avalonia.Controls/Button.cs
+++ b/src/Avalonia.Controls/Button.cs
@@ -59,13 +59,13 @@ namespace Avalonia.Controls
AvaloniaProperty.Register