C# winform中窗口關(guān)閉按鈕的隱藏與禁用詳解
首先說一句:
不存任何一種方式可以單獨(dú)隱藏關(guān)閉按鈕,隱藏的話會把所有最大化,最小化,幫助,關(guān)閉按鈕都給隱藏掉。
第一種:禁用窗口上部的關(guān)閉按鈕
方法一:在Form1的窗口程序中desigener設(shè)計(jì)器中重寫如下方法:(將此部分粘貼到窗口程序中去就可以了)
protected override void WndProc(ref Message m)
{
const int WM_SYSCOMMAND = 0x0112;
const int SC_CLOSE = 0xF060;
if (m.Msg == WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)
{
return;
}
base.WndProc(ref m);
}

方法二:就是在窗口的FormClosing事件中加上這樣一句話就可以了
e.Cancel=true

第二種:隱藏掉窗口上部的關(guān)閉按鈕
方法一:在窗口的初始化事件中加上this.Control=false;這樣一句話就可以了
public mainForm()
{
InitializeComponent();
this.ControlBox = false;
}

方法二:將窗口的FormBoderstyle屬性設(shè)置為None。這種方法是將整個標(biāo)題欄去掉了。

補(bǔ)充知識:C#Winform去掉邊框后,窗體最大化,任務(wù)欄被遮擋問題!
問題描述:
為了自定義設(shè)置界面的標(biāo)題,邊框樣式,我們通常會把winform窗體的邊
框?qū)傩栽O(shè)置為None,但去掉邊框的窗體在最大化時會擋住電腦桌面的任務(wù)欄,
但任務(wù)欄的時間、輸入法等我們?nèi)匀恍枰玫剑虼巳蝿?wù)欄必須顯示出來。
解決方法:
在窗體初始化完后,加入
this.MaximizedBounds = Screen.PrimaryScreen.WorkingArea;
或
this.Size = Screen.PrimaryScreen.WorkingArea.Size;
例:
public MainFrm()
{
InitializeComponent();
this.MaximizedBounds = Screen.PrimaryScreen.WorkingArea;
}
以上這篇C# winform中窗口關(guān)閉按鈕的隱藏與禁用詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#實(shí)現(xiàn)計(jì)算年齡的簡單方法匯總
本文給大家分享的是C#代碼實(shí)現(xiàn)的簡單實(shí)用的給出用戶的出生日期,計(jì)算出用戶的年齡的代碼,另外附上其他網(wǎng)友的方法,算是對計(jì)算年齡的一次小結(jié),希望大家能夠喜歡。2015-05-05
分享兩種實(shí)現(xiàn)Winform程序的多語言支持的多種解決方案
本篇文章主要介紹了分享兩種實(shí)現(xiàn)Winform程序的多語言支持的多種解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。2017-02-02
C#實(shí)現(xiàn)異步連接Sql Server數(shù)據(jù)庫的方法
這篇文章主要介紹了C#實(shí)現(xiàn)異步連接Sql Server數(shù)據(jù)庫的方法,涉及C#中await方法的相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04

