好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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#程序设计有所帮助。

dy("nrwz");

查看更多关于WinForm实现窗体最大化并遮盖任务栏的方法的详细内容...

  阅读:82次