本文实例讲述了WinForm实现窗体最大化并遮盖任务栏的方法。分享给大家供大家参考。具体实现方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
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 ;
}
}
}
}
|
调用:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
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#程序设计有所帮助。