Отключение минимизации и максимизации на WinForm?

У WinForms есть три поля в правом верхнем углу, которые минимизируют, максимизируют и закрывают форму. То, что я хочу сделать, - удалить минимизацию и максимизировать, сохраняя при этом закрытие.

Я также хочу, чтобы закрыть закругление формы, а не закрывать ее.

Как это можно сделать?

Ответ 1

Form имеет два свойства, называемые MinimizeBox и MaximizeBox, установите оба из них в false.

Чтобы остановить закрытие формы, обработайте событие FormClosing и установите там e.Cancel = true; и после этого установите WindowState = FormWindowState.Minimized;, чтобы свести к минимуму форму.

Ответ 2

Привяжите обработчик к событию FormClosing, затем установите e.Cancel = true и установите форму this.WindowState = FormWindowState.Minimized.

Если вы хотите когда-либо закрыть форму, создайте класс boolean _close в классе, а в вашем обработчике установите e.Cancel на !_close, чтобы каждый раз, когда пользователь нажимает кнопку X в окне, он не закрывается, но вы все равно можете закрыть его (без его убийства) с помощью close = true; this.Close();

(И чтобы завершить мой ответ) установите MaximizeBox и MinimizeBox свойства формы в False.

Ответ 3

Задайте свойства формы MaximizeBox и MinimizeBox для False

Ответ 4

Щелкните правой кнопкой мыши форму, которую вы хотите скрыть, выберите "Элементы управления" → "Свойства".

В свойствах задайте

  • Блок управления → False
  • Свернуть окно → False
  • Максимальное поле → Ложно

Вы сделаете это в дизайнере.

Ответ 5

вы можете просто отключить максимизацию внутри конструктора форм.

 public Form1(){
     InitializeComponent();
     MaximizeBox = false;
 }

для минимизации при закрытии.

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
    e.Cancel = true;
    WindowState = FormWindowState.Minimized;
}

Ответ 6

Как свести форму к минимуму, когда закрытие уже было получено, но как удалить кнопки минимизации и максимизации не были.
FormBorderStyle: FixedDialog
MinimizeBox: false
MaximizeBox: false

Ответ 7

public Form1()
{
InitializeComponent();
//this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
}