Let me be more specific.  I own an engineering business where we do extensive hardware and software work.   So this is not an instance of a user not knowing how to use the taskbar.

The first thing I do when I set up a PC is set the takbar to always show, never combine as I can't stand combined taskbar icons.

And as another follow up, this issue will apply itself to one program at a time.  It is randomly every program, but if it's say Chrome that won't maximize, none of the chrome taskbar icons will maximize, but all of the other taskbar programs will.

🌐
Eleven Forum
elevenforum.com › windows support forums › general support
Shortcut/software to maximize window on top of taskbar with 2 monitors | Windows 11 Forum
October 21, 2023 - The solution is is set all apps yo open as normal window. Open the app and drag its edges to almost full screen, leaving a pixel or two along the edges so you can still see the double ended arrow when you hover over the edge. Then your taskbar should be be visible when you do want to see it.
Top answer
1 of 5
3

Let me be more specific.  I own an engineering business where we do extensive hardware and software work.   So this is not an instance of a user not knowing how to use the taskbar.

The first thing I do when I set up a PC is set the takbar to always show, never combine as I can't stand combined taskbar icons.

And as another follow up, this issue will apply itself to one program at a time.  It is randomly every program, but if it's say Chrome that won't maximize, none of the chrome taskbar icons will maximize, but all of the other taskbar programs will.

2 of 5
3

Is it possible that there is more than one running instance of the program(s) you are trying to "maximize"?

If so, then just clicking the taskbar icon will not usually restore the previously minimized window because it doesn't know which one you want. For example, if you are running two File Explorer windows and minimize them both, AND if there is not much room on the taskbar (many other programs perhaps) they will occupy the same taskbar position, and you cannot restore those windows with just a mouse click. In this state, the taskbar icon is said to represent a "group" of windows. Here are some keyboard plus mouse shortcuts that may help in this and similar cases. The Ctrl + that you are using is a special case of the first one:

When the taskbar button represents a group of windows:

(a) Hold the Ctrl key down: repeated left-clicks of the mouse on the taskbar button will cycle through each window in the group.

(b) Pressing the Shift key while you right-click the taskbar button will bring up a menu of choices for rearranging all of the group's windows.

When the taskbar button represents just one window:

(a) The same Ctrl + shown above will just restore the window.

(b) The same Shift + shown above will bring up a very different menu - the one with "Minimize", "Maximize", "Restore" etc.

(c) Shift + will bring up another instance (fresh copy) of a program that is already running.

(d) Ctrl + Shift + will do the same thing but the new instance will run with Administrator privileges.

But if your issue is NOT due to multiple instances or a nearly full taskbar then .... Never mind!

Discussions

How do I get the taskbar to be on top of a maximized window?
Unfortunately, Windows doesn't provide an out-of-the-box setting to achieve this. The taskbar is designed to either auto-hide or to be displayed alongside applications, not on top of them when they're maximized. Tools like TaskbarX or DisplayFusion offer more control over how the taskbar behaves but I ain't sure that they have this option. More on reddit.com
🌐 r/Windows10
3
4
April 15, 2024
Windows 10 taskbar programs won't maximize unless the Ctrl key is pressed
I need to point at the taskbar icon and then hit the Ctrl key. There is no time that using the Ctrl key will not work to maximize the screen. 25% is a lot. I'm needing to do this thirty times a day. The computer is already set to PC screen only mode. I ran DISM, and it found nothing. I'm assuming this is a bug? How does one report this? I'm running 1909 Pro. Windows ... More on answers.microsoft.com
🌐 answers.microsoft.com
9
22
July 6, 2023
WPF : Maximize window with WindowState Problem (application will hide windows taskbar) - Stack Overflow
Some applications may require that ... pixels from each dimension to prevent overlapping of the taskbar and "off-screen" areas. But this is by far the best approach. 2020-10-11T22:04:17.377Z+00:00 ... I've implemented solution which considers multiple displays case based on the Mike Weinhardt answer in the thread. If you want to maximize/minimize window programmatically ... More on stackoverflow.com
🌐 stackoverflow.com
September 27, 2023
How to maximize window without hiding windows taskbar
I use the following code to maximize the WPF window. The problem is that the Windows taskbar is hidden. More on learn.microsoft.com
🌐 learn.microsoft.com
1
0
March 20, 2022
🌐
MajorGeeks
majorgeeks.com › content › page › application_stays_minimized_in_the_taskbar.html
Application Stays Minimized in the Taskbar - MajorGeeks
Now, press the Windows Key + Shift + M to maximize all Windows. 4: Windows Key + Arrows With the application active, if possible, press the Windows Key followed by the arrow down, then up.
🌐
Windows 10 Forums
tenforums.com › tutorials › 147622-how-maximize-restore-app-window-windows-10-a.html
How to Maximize and Restore App Window in Windows 10 - Windows 10 Help Forums
January 2, 2020 - OR B) Press and hold the Shift key, right click or press and hold on the app icon on the taskbar you want to maximize, release the Shift key, and click/tap on Maximize or press X. (see screenshot below) If you have more than one instance of ...
🌐
Reddit
reddit.com › r/windows10 › how do i get the taskbar to be on top of a maximized window?
r/Windows10 on Reddit: How do I get the taskbar to be on top of a maximized window?
April 15, 2024 -

So I want the taskbar to be on top of the window, just like when the taskbar is visible when the 'hide taskbar' option is enabled (see example in 2nd image below).

I want my taskbar icons to be always visible, so the 'hide taskbar' option is not an option.

Top answer
1 of 2
2
Unfortunately, Windows doesn't provide an out-of-the-box setting to achieve this. The taskbar is designed to either auto-hide or to be displayed alongside applications, not on top of them when they're maximized. Tools like TaskbarX or DisplayFusion offer more control over how the taskbar behaves but I ain't sure that they have this option.
2 of 2
1
Hi u/MlcManuel , thanks for posting to r/Windows ! Don't worry, your post has not been removed. To let us help you better, try to include as much of the following information as possible! Posts with insufficient details might be removed at the moderator's discretion. Model of your computer - For example: "HP Spectre X360 14-EA0023DX" Your Windows and device specifications - You can find them by going to go to Settings > "System" > "About" What troubleshooting steps you have performed - Even sharing little things you tried (like rebooting) can help us find a better solution! Any error messages you have encountered - Those long error codes are not gibberish to us! Any screenshots or logs of the issue - You can upload screenshots other useful information in your post or comment, and use Pastebin for text (such as logs). You can learn how to take screenshots here . All Tech Support posts must be help related. If everything is working without issue, then you likely used the wrong flair, please change it to "General Question" or "Discussion". I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
🌐
Eleven Forum
elevenforum.com › windows support forums › tutorials
Maximize Window in Windows 11 | Windows 11 Forum
September 4, 2025 - 1 Hover the pointer on the window's taskbar icon to see its thumbnail preview. (see screenshot below) 2 Right click on the taskbar thumbnail preview. 3 Click/tap on Maximize. ... 1 Open Task Manager (Ctrl+Shift+Esc).
🌐
MiniTool
minitool.com › home › news › fixed! program won’t maximize from the taskbar in windows 10
Fixed! Program Won’t Maximize from the Taskbar in Windows 10 - MiniTool
January 12, 2023 - 1. Press Shift+Ctrl and then right-click the program icon on the taskbar. Next, you need to select Restore or Maximise from the pop-up menu to see whether you can maximize the program.
Find elsewhere
🌐
DisplayFusion
displayfusion.com › Discussions › View › windows-maximized-over-or-under-windows-taskbar
Windows maximized over or under Windows taskbar • Discussions • DisplayFusion by Binary Fortress Software
But whenever I open the monitor configuration window and hit OK, without making any change, the problem goes away.... until the next time. ... Indeed, it does. I also just noticed that the error occured after booting from Hibernation, I'll observe if it's reproducible ... Seems to be at least connected to Hibernation for me. Maximized under the taskbar after resuming, and after opening and closing Monitor configuration it worked again.
🌐
The Windows Club
thewindowsclub.com › the windows club › how to minimize and maximize windows in windows 11/10
How to Minimize and Maximize windows in Windows 11/10
For example, if you have opened an app that is pinned on the 6th number on the Taskbar, you have to press the Win + 6 keys to minimize it. Press the Win + 6 keys again to maximize it. In the above screenshot, I have numbered the apps pinned ...
Published   August 23, 2022
🌐
Computer Hope
computerhope.com › tips › tip201.htm
How to Make Windows Programs Open As Maximized
June 14, 2025 - Right-click the shortcut icon in the Windows taskbar, then right-click the program itself. Select Properties in the menu. In the Properties window, click the Shortcut tab (A). Locate the Run: section, and click the down arrow on the right side ...
Top answer
1 of 9
55

You can set the MaxHeight property of that window to SystemParameters.MaximizedPrimaryScreenHeight using the constructor.

public MainWindow()
{
    InitializeComponent();
    this.MaxHeight = SystemParameters.MaximizedPrimaryScreenHeight;
}
2 of 9
23

To continue with my previous remark. I use the following code in my applications (source: Maximizing WPF windows

using WinInterop = System.Windows.Interop;
using System.Runtime.InteropServices;

    public MainWindow()
    {
        InitializeComponent();
        winMain.SourceInitialized += new EventHandler(win_SourceInitialized);
    }


    #region Avoid hiding task bar upon maximalisation

    private static System.IntPtr WindowProc(
          System.IntPtr hwnd,
          int msg,
          System.IntPtr wParam,
          System.IntPtr lParam,
          ref bool handled)
    {
        switch (msg)
        {
            case 0x0024:
                WmGetMinMaxInfo(hwnd, lParam);
                handled = true;
                break;
        }

        return (System.IntPtr)0;
    }

    void win_SourceInitialized(object sender, EventArgs e)
    {
        System.IntPtr handle = (new WinInterop.WindowInteropHelper(this)).Handle;
        WinInterop.HwndSource.FromHwnd(handle).AddHook(new WinInterop.HwndSourceHook(WindowProc));
    }

    private static void WmGetMinMaxInfo(System.IntPtr hwnd, System.IntPtr lParam)
    {

        MINMAXINFO mmi = (MINMAXINFO)Marshal.PtrToStructure(lParam, typeof(MINMAXINFO));

        // Adjust the maximized size and position to fit the work area of the correct monitor
        int MONITOR_DEFAULTTONEAREST = 0x00000002;
        System.IntPtr monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST);

        if (monitor != System.IntPtr.Zero)
        {

            MONITORINFO monitorInfo = new MONITORINFO();
            GetMonitorInfo(monitor, monitorInfo);
            RECT rcWorkArea = monitorInfo.rcWork;
            RECT rcMonitorArea = monitorInfo.rcMonitor;
            mmi.ptMaxPosition.x = Math.Abs(rcWorkArea.left - rcMonitorArea.left);
            mmi.ptMaxPosition.y = Math.Abs(rcWorkArea.top - rcMonitorArea.top);
            mmi.ptMaxSize.x = Math.Abs(rcWorkArea.right - rcWorkArea.left);
            mmi.ptMaxSize.y = Math.Abs(rcWorkArea.bottom - rcWorkArea.top);
        }

        Marshal.StructureToPtr(mmi, lParam, true);
    }

    [StructLayout(LayoutKind.Sequential)]
    public struct POINT
    {
        /// <summary>
        /// x coordinate of point.
        /// </summary>
        public int x;
        /// <summary>
        /// y coordinate of point.
        /// </summary>
        public int y;

        /// <summary>
        /// Construct a point of coordinates (x,y).
        /// </summary>
        public POINT(int x, int y)
        {
            this.x = x;
            this.y = y;
        }
    }

    [StructLayout(LayoutKind.Sequential)]
    public struct MINMAXINFO
    {
        public POINT ptReserved;
        public POINT ptMaxSize;
        public POINT ptMaxPosition;
        public POINT ptMinTrackSize;
        public POINT ptMaxTrackSize;
    };

    void win_Loaded(object sender, RoutedEventArgs e)
    {
        winMain.WindowState = WindowState.Maximized;
    }

    [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
    public class MONITORINFO
    {
        /// <summary>
        /// </summary>            
        public int cbSize = Marshal.SizeOf(typeof(MONITORINFO));

        /// <summary>
        /// </summary>            
        public RECT rcMonitor = new RECT();

        /// <summary>
        /// </summary>            
        public RECT rcWork = new RECT();

        /// <summary>
        /// </summary>            
        public int dwFlags = 0;
    }

    [StructLayout(LayoutKind.Sequential, Pack = 0)]
    public struct RECT
    {
        /// <summary> Win32 </summary>
        public int left;
        /// <summary> Win32 </summary>
        public int top;
        /// <summary> Win32 </summary>
        public int right;
        /// <summary> Win32 </summary>
        public int bottom;

        /// <summary> Win32 </summary>
        public static readonly RECT Empty = new RECT();

        /// <summary> Win32 </summary>
        public int Width
        {
            get { return Math.Abs(right - left); }  // Abs needed for BIDI OS
        }
        /// <summary> Win32 </summary>
        public int Height
        {
            get { return bottom - top; }
        }

        /// <summary> Win32 </summary>
        public RECT(int left, int top, int right, int bottom)
        {
            this.left = left;
            this.top = top;
            this.right = right;
            this.bottom = bottom;
        }


        /// <summary> Win32 </summary>
        public RECT(RECT rcSrc)
        {
            this.left = rcSrc.left;
            this.top = rcSrc.top;
            this.right = rcSrc.right;
            this.bottom = rcSrc.bottom;
        }

        /// <summary> Win32 </summary>
        public bool IsEmpty
        {
            get
            {
                // BUGBUG : On Bidi OS (hebrew arabic) left > right
                return left >= right || top >= bottom;
            }
        }
        /// <summary> Return a user friendly representation of this struct </summary>
        public override string ToString()
        {
            if (this == RECT.Empty) { return "RECT {Empty}"; }
            return "RECT { left : " + left + " / top : " + top + " / right : " + right + " / bottom : " + bottom + " }";
        }

        /// <summary> Determine if 2 RECT are equal (deep compare) </summary>
        public override bool Equals(object obj)
        {
            if (!(obj is Rect)) { return false; }
            return (this == (RECT)obj);
        }

        /// <summary>Return the HashCode for this struct (not garanteed to be unique)</summary>
        public override int GetHashCode()
        {
            return left.GetHashCode() + top.GetHashCode() + right.GetHashCode() + bottom.GetHashCode();
        }


        /// <summary> Determine if 2 RECT are equal (deep compare)</summary>
        public static bool operator ==(RECT rect1, RECT rect2)
        {
            return (rect1.left == rect2.left && rect1.top == rect2.top && rect1.right == rect2.right && rect1.bottom == rect2.bottom);
        }

        /// <summary> Determine if 2 RECT are different(deep compare)</summary>
        public static bool operator !=(RECT rect1, RECT rect2)
        {
            return !(rect1 == rect2);
        }


    }

    [DllImport("user32")]
    internal static extern bool GetMonitorInfo(IntPtr hMonitor, MONITORINFO lpmi);

    [DllImport("user32.dll")]
    static extern bool GetCursorPos(ref Point lpPoint);

    [DllImport("User32")]
    internal static extern IntPtr MonitorFromWindow(IntPtr handle, int flags);

    #endregion
🌐
Microsoft Learn
learn.microsoft.com › en-us › answers › questions › 779199 › how-to-maximize-window-without-hiding-windows-task
How to maximize window without hiding windows taskbar - Microsoft Q&A
March 20, 2022 - Hi,@Sarah . For the problem setting Window maximized will cover the taskbar when WindowStyle="None", it is recommended that you report questions on Developer Community.
🌐
Microsoft Learn
learn.microsoft.com › en-us › answers › questions › 2418495 › program-windows-maximize-underneath-taskbar
Program windows maximize underneath taskbar - Microsoft Q&A
July 13, 2022 - The fix turned out to be unlocking the taskbar and then dragging it over to a different position on the screen, and then replacing it at the bottom and re-locking the taskbar. Now the windows are correctly displayed when maximized.
🌐
The Geek Page
thegeekpage.com › cannot-maximize-programs-from-taskbar
Cannot Maximize Programs From Taskbar In Windows 10 / 11 Fix
February 17, 2023 - Step 2: Click on PC Screen Only option from the pop-out window. This will solve the issue and you will be able to maximize the programs from the taskbar.
🌐
The Windows Club
thewindowsclub.com › the windows club › application stays minimized in the taskbar in windows 11/10
Application stays minimized in the Taskbar in Windows 11/10
Press Win+M keys and then Win+Shift+M keys to minimize and then maximize all windows. Press WinKey+Up/Down arrow key and see. Press Alt+Space and see if the Maximize/Restore/Minimize, etc, box appears.
Published   June 23, 2023
🌐
Reddit
reddit.com › r/windows › windows 10: program is minimized, but clicking the icon in the taskbar won’t show it.
r/windows on Reddit: Windows 10: program is minimized, but clicking the icon in the taskbar won’t show it.
June 26, 2018 -

I am running a game in the background I minimized it so it isn’t visible. When I click its icon in the taskbar to bring it back up, nothing happens, even though the icon shows its opened. It is not offscreen either. I have unsaved data so I would rather not restart my pc. Hovering over it also brings no preview.

🌐
DisplayFusion
displayfusion.com › Discussions › View › the-maximise-view-causes-bottom-of-window-to-be-hidden-behind-task-bar
The maximise view causes bottom of window to be hidden behind task bar • Discussions • DisplayFusion by Binary Fortress Software
Step 2: Navigate to "Multi-Monitor Taskbar" Step 3: Navigate to "Position" Step 4: Change from "Default" to <Your preferred orientation on the screen.> In my case this was bottom. The windows are no longer hiding behind the displayfusion taskbar, and you can maximize without them trying to hide.