WinForm实现窗体最大化并遮盖任务栏的方法
作者:我心依旧
这篇文章主要介绍了WinForm实现窗体最大化并遮盖任务栏的方法,涉及C#实现WinForm窗体全屏显示的实现及调用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了WinForm实现窗体最大化并遮盖任务栏的方法。分享给大家供大家参考。具体实现方法如下:
using System; using System.Windows.Forms; using System.Drawing; namespace CSImageFullScreenSlideShow { public class FullScreen { private FormWindowState winState; private FormBorderStyle brdStyle; private bool topMost; private Rectangle bounds; public FullScreen() { IsFullScreen = false; } public bool IsFullScreen { get; set; } public void EnterFullScreen(Form targetForm) { if (!IsFullScreen) { Save(targetForm); // Save the original form state. targetForm.WindowState = FormWindowState.Maximized; targetForm.FormBorderStyle = FormBorderStyle.None; targetForm.TopMost = true; targetForm.Bounds = Screen.GetBounds(targetForm); IsFullScreen = true; } } /// <summary> /// Save the current Window state. /// </summary> private void Save(Form targetForm) { winState = targetForm.WindowState; brdStyle = targetForm.FormBorderStyle; topMost = targetForm.TopMost; bounds = targetForm.Bounds; } /// <summary> /// Leave the full screen mode and restore the original window state. /// </summary> public void LeaveFullScreen(Form targetForm) { if (IsFullScreen) { // Restore the original Window state. targetForm.WindowState = winState; targetForm.FormBorderStyle = brdStyle; targetForm.TopMost = topMost; targetForm.Bounds = bounds; IsFullScreen = false; } } } }
调用:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace CSImageFullScreenSlideShow { public partial class Test : Form { public Test() { InitializeComponent(); } private FullScreen fullScreen = new FullScreen(); private void button1_Click(object sender, EventArgs e) { if (fullScreen.IsFullScreen) { fullScreen.LeaveFullScreen(this); } else { fullScreen.EnterFullScreen(this); } } } }
希望本文所述对大家的C#程序设计有所帮助。