C # Winform: полноэкранный пользовательский контроль - PullRequest
4 голосов
/ 10 мая 2010

У меня есть приложение с основной формой. основная форма имеет меню и некоторую панель инструментов и один пользовательский элемент управления, устанавливающий в док-станцию ​​Fill. Как я могу предоставить полноэкранный вид, чтобы пользовательский элемент управления был установлен на весь экран, а все меню и набор инструментов скрывались от основной формы.

Ответы [ 3 ]

3 голосов
/ 10 мая 2010

Не то, чтобы я когда-либо делал это - по моему подходу было бы:

В полноэкранном режиме вы можете сделать следующее:

отключить границу формы установить для controlbox значение false (избавляется от заголовка окна и меню в левом верхнем углу окна) сделать меню / панель инструментов невидимой.

Это делается с помощью свойства Visible этих элементов управления.

Теперь вы должны иметь возможность установить состояние окна формы на Maximized.

РЕДАКТИРОВАТЬ - Пример кода:

Вставьте это в файл кода нового приложения форм

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 голос
/ 08 апреля 2012

В дополнение к этому, до максимизации , сделайте следующее:

this.TopMost = true;

... чтобы установить контроль над нижней панелью Windows и кнопкой пуска (в основном это заполнит весь экран).

0 голосов
/ 10 мая 2010

Я бы программно изменил пользовательский интерфейс, скрыв все панели контейнера, кроме панели контейнера рабочей области, где расположен пользовательский элемент управления.

...