Как сделать крестик неактивным в заголовке формы - C#

Узнай цену своей работы

Формулировка задачи:

как можно выключить крестик на форме ?.Вот именно выключить а не свойством controlBox и не событием formClosing(и рисовать в picturebox тоже не предлагать). Я пробовал искать на эту тему и нашёл только код на c++ http://netcode.ru/cpp/?artID=26 Вообщем помогите мне перевести код или же напишите сами

Решение задачи: «Как сделать крестик неактивным в заголовке формы»

textual
Листинг программы
using System.Runtime.InteropServices; // наверх, к прочим using
...
// это все внутри класса формы
 
// константы WinAPI
// значения их найдены в гугле
const int SC_CLOSE = 0xF060;
const int MF_GRAYED = 0x1;
const long MF_BYCOMMAND = 0x00000000L;
 
// импорт функций WinAPI
[DllImport("user32.dll")]
static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);
 
[DllImport("user32.dll")]
static extern bool EnableMenuItem(IntPtr hMenu, uint uIDEnableItem,
    uint uEnable);
...
// это в коде
IntPtr hMenu = GetSystemMenu(this.Handle, false);
EnableMenuItem(hMenu, SC_CLOSE, (uint)MF_BYCOMMAND | MF_GRAYED);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.818 из 5
Похожие ответы