WinForm实现窗体最大化并遮盖任务栏的方法
本文实例讲述了WinForm实现窗体最大化并遮盖任务栏的方法。分享给大家供大家参考。具体实现方法如下:
usingSystem;
usingSystem.Windows.Forms;
usingSystem.Drawing;
namespaceCSImageFullScreenSlideShow
{
publicclassFullScreen
{
privateFormWindowStatewinState;
privateFormBorderStylebrdStyle;
privatebooltopMost;
privateRectanglebounds;
publicFullScreen()
{
IsFullScreen=false;
}
publicboolIsFullScreen
{
get;
set;
}
publicvoidEnterFullScreen(FormtargetForm)
{
if(!IsFullScreen)
{
Save(targetForm);//Savetheoriginalformstate.
targetForm.WindowState=FormWindowState.Maximized;
targetForm.FormBorderStyle=FormBorderStyle.None;
targetForm.TopMost=true;
targetForm.Bounds=Screen.GetBounds(targetForm);
IsFullScreen=true;
}
}
///<summary>
///SavethecurrentWindowstate.
///</summary>
privatevoidSave(FormtargetForm)
{
winState=targetForm.WindowState;
brdStyle=targetForm.FormBorderStyle;
topMost=targetForm.TopMost;
bounds=targetForm.Bounds;
}
///<summary>
///Leavethefullscreenmodeandrestoretheoriginalwindowstate.
///</summary>
publicvoidLeaveFullScreen(FormtargetForm)
{
if(IsFullScreen)
{
//RestoretheoriginalWindowstate.
targetForm.WindowState=winState;
targetForm.FormBorderStyle=brdStyle;
targetForm.TopMost=topMost;
targetForm.Bounds=bounds;
IsFullScreen=false;
}
}
}
}
调用:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceCSImageFullScreenSlideShow
{
publicpartialclassTest:Form
{
publicTest()
{
InitializeComponent();
}
privateFullScreenfullScreen=newFullScreen();
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(fullScreen.IsFullScreen)
{
fullScreen.LeaveFullScreen(this);
}
else
{
fullScreen.EnterFullScreen(this);
}
}
}
}
希望本文所述对大家的C#程序设计有所帮助。