这篇文章主要介绍了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#程序设计有所帮助。
新闻热点
疑难解答