C#Winform:全屏用户控件

时间:2010-05-10 07:10:13

标签: c# winforms fullscreen

我有一个主表单的应用程序。主窗体有菜单和一些工具条,一个用户控件将dock设置为Fill。如何提供全屏视图,以便用户控件设置为全屏,并且所有菜单和工具条都隐藏在主窗体之外。

3 个答案:

答案 0 :(得分:3)

不是说我曾经做过 - 我的做法是:

在全屏'模式'中执行此操作:

关闭表单边框 将控件框设置为false(删除标题栏和左上角的窗口菜单) 使菜单/工具条不可见。

这是通过这些控件的“可见”属性完成的。

现在,您应该能够将窗体的窗口状态设置为“最大化”。

编辑 - 代码示例:

将其粘贴到新表单应用程序的代码文件中

public partial class Form1 : Form
{
  public Form1()
  {
    InitializeComponent();
  }
  private void Form1_Load(object sender, EventArgs e)
  {
    this.ControlBox = false;
    this.FormBorderStyle = FormBorderStyle.None;
    this.WindowState = FormWindowState.Maximized;
  }

  private void Form1_KeyDown(object sender, KeyEventArgs e)
  {
    //example of how to programmatically reverse the full-screen.
    //(You will have to add the event handler for KeyDown for this to work)
    //if you are using a Key event handler, then you should set the 
    //form's KeyPreview property to true so that it works when focus
    //is on a child control.
    if (e.KeyCode == Keys.Escape)
    {
      this.ControlBox = true;
      this.FormBorderStyle = FormBorderStyle.Sizable;
      this.WindowState = FormWindowState.Normal;
    }
  }
}

答案 1 :(得分:1)

除此之外,最大化之前,请执行以下操作:

this.TopMost = true;

...将您的控制放在Windows底部面板和开始按钮上(基本上这将填满整个屏幕)。

答案 2 :(得分:0)

我会以编程方式更改UI,隐藏除工作区容器面板之外的所有容器面板,用户控件所在的位置。