Sådan lukkes knappen Luk i en Windows-form ved hjælp af C # -kodning

Indlæg af Hanne Mølgaard Plasc

Problem



alle sammen. Jeg vil bare gøre Luk-knappen deaktiveret på en knap, klik på begivenhed ved hjælp af C # .net. Jeg prøver for dette, men ikke korrekt, at det er korrekt.


  private void button1\_Click(object sender, EventArgs e)
    {
        this.ControlBox = false;
    }

Bedste reference


Tilføj følgende bibliotek


using System.Runtime.InteropServices;


Erklære følgende som klasse niveau variabel


const int MF\_BYPOSITION = 0x400;

[DllImport("User32")]
private static extern int RemoveMenu(IntPtr hMenu, int nPosition, int wFlags);

[DllImport("User32")]
private static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);

[DllImport("User32")]
private static extern int GetMenuItemCount(IntPtr hWnd);


I formularen Form\_Load () skal du skrive følgende kode


private void Form1\_Load(object sender, EventArgs e)
{
        IntPtr hMenu = GetSystemMenu(this.Handle, false);
        int menuItemCount = GetMenuItemCount(hMenu);
        RemoveMenu(hMenu, menuItemCount - 1, MF\_BYPOSITION);


}


Deaktiver Luk 'X' -knappen [6]


Bare rediger det for din ClickEvent

Andre referencer 1


private const int dis\_close\_button = 0x200;
    protected override CreateParams CreateParams
    {
        get
        {
            CreateParams ObjCP = base.CreateParams;
            ObjCP.ClassStyle = ObjCP.ClassStyle | dis\_close\_button;
            return ObjCP;
        }
    }


Prøv dette...