diff --git a/src/System.Windows.Forms/System/Windows/Forms/Controls/TabControl/TabControl.cs b/src/System.Windows.Forms/System/Windows/Forms/Controls/TabControl/TabControl.cs index 538d8724a9e..203b7e397cf 100644 --- a/src/System.Windows.Forms/System/Windows/Forms/Controls/TabControl/TabControl.cs +++ b/src/System.Windows.Forms/System/Windows/Forms/Controls/TabControl/TabControl.cs @@ -2068,7 +2068,16 @@ protected override unsafe void WndProc(ref Message m) case MessageId.WM_REFLECT_MEASUREITEM: // We use TCM_SETITEMSIZE instead break; + case PInvokeCore.WM_PARENTNOTIFY: + // Apply dark mode to spinner (updown) button when it's created + if (m.WParamInternal.LOWORD == PInvokeCore.WM_CREATE && Application.IsDarkModeEnabled) + { + HWND childHandle = (HWND)m.LParamInternal; + PInvoke.SetWindowTheme(childHandle, $"{DarkModeIdentifier}_{ExplorerThemeIdentifier}", null); + } + base.WndProc(ref m); + break; case PInvokeCore.WM_NOTIFY: case MessageId.WM_REFLECT_NOTIFY: NMHDR* nmhdr = (NMHDR*)(nint)m.LParamInternal;