Hide the taskbar using C#
Question
I am running Windows XP 64 bit. I want to hide the taskbar when I run my application.
I tried codes by searching the web. In all those, it hides the task bar. But the problem is, when i open a notepad and maximize it, it is not actually into full screen. Because the space where task bar was there is still blocked with empty space. I want it fit really into full screen mode.
Solution
I've done this by making the application borderless, maximized, and setting it to be Topmost. Here's a perfect example from CodeProject.
As one of the commenters has said, replacing disabling Explorer and running your application might be the best way, security-wise.
OTHER TIPS
If you like to replace the windows shell (taskbar) you'll have to change a registry key.
Changing the default shell (all users):
- open regedit (start menu > run, and type in regedit)
- go to: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon.
- Change Shell from explorer.exe to your program path and name e.g. c:\myKioskApp\Kiosk.exe
Changing the default shell (only current user):
- open regedit (start menu > run, and type in regedit).
- go to: HKCU\Software\Microsoft\Windows NT\CurrentVersion\Winlogon.
- add a new string value (Edit > New > String Value) called shell. and set the value to the path of the new shell e.g. c:\myKioskApp\Kiosk.exe
- log out and log back in.
You Can Hide your task bar by setting Following Properties of your C# Form.
WindowState : Maximized FormBorderStyle : FixedDialog
on window 7 (or maybe higher) using FormWindowState.Maximized
is wrong because the maximum size will be subtracted by Taskbar height but you can do this
this.WindowState = FormWindowState.Normal; // or default
this.FormBorderStyle = FormBorderStyle.None;
this.TopMost = true;
// do it here
this.Location = new Point(0,0);
var fullscreenSize = new Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
this.Size = fullscreenSize;