C# 窗體關閉時提示是否關閉

方法:
    一、調用窗體FormClosing事件
    二、在事件方法中編寫提示代碼

1、調用窗體FormClosing事件
        //窗體的Closing事件,窗體關閉之前引發此事件
        
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.memberFormClosing);

2、在事件方法中編寫提示代碼
        ///   <summary>
       
///  窗體關閉時引發的方法
       
///   </summary>
       
///   <param name="sender"></param>
        
///   <param name="e"> FormClosingEventArgs類型參數,提供FormClosing事件的資料 </param>
         private   void  memberFormClosing( object  sender, FormClosingEventArgs e)
        {                 
            
// 得到消息框中單擊按鈕后返回的的值(實際是作為一個DialogResult枚舉返回,它標識哪些按鈕被單擊)
            DialogResult key  =  MessageBox.Show(
                
" Are you sure want to quit " ,
                
" confim " ,
                MessageBoxButtons.YesNo,
                MessageBoxIcon.Question
                );            
            
// 判斷窗體是否要關閉
            e.Cancel  =  (key  ==  DialogResult.No);            
        }
說明:
    此方法作用是顯示一個消息框,要求用戶確定它們是否退出應用程序。消息框包含「是」和「否」這兩個按鈕及一個問號
    其中:
        FormClosingEventArgs:提供FormClosing事件的資料。
        DialogResult:指定識別項以指示對話方塊的傳回值。 其成員有:

成員名稱

說明

Abort

對話方塊傳回值是 Abort (通常由標記為 [中止] 的按鈕傳回) 

Cancel

對話方塊傳回值是 Cancel (通常由標記為 [取消] 的按鈕傳回) 

Ignore

對話方塊傳回值是 Ignore (通常由標記為 [忽略] 的按鈕傳回) 

No

對話方塊傳回值是 No (通常由標記為 [] 的按鈕傳回) 

None

對話方塊傳回 Nothing。這表示強制回應 (Modal) 對話方塊繼續執行。 

OK

對話方塊的傳回值是 OK (通常由標記為 [確定] 的按鈕傳回) 

Retry

對話方塊傳回值是 Retry (通常由標記為 [重試] 的按鈕傳回) 

Yes

對話方塊傳回值是 Yes (通常由標記為 [] 的按鈕傳回) 


        MessageBox :顯示可以包含文字、按鈕和通知與指示使用者的符號的訊息方塊。
        其參數有:
 
MessageBox.Show (
    IWin32Window owner,
    
string  text,
    
string  caption,
    MessageBoxButtons buttons,
    MessageBoxIcon icon,
    MessageBoxDefaultButton defaultButton,
    MessageBoxOptions options,
    
string  helpFilePath,
    HelpNavigator navigator,
    Object param
)

        參數說明:
owner         :IWin32Window 實作,將擁有強制回應對話方塊。
text          :要顯示在訊息方塊中的文字。 
caption       :要顯示在訊息方塊標題列中的文字。 
buttons       :其中一個 MessageBoxButtons 值,指定要在訊息方塊中顯示哪些按鈕。 
icon          :其中一個 MessageBoxIcon 值,指定那個圖示要顯示在訊息方塊中。 
defaultButton :其中一個 MessageBoxDefaultButton 值,指定訊息方塊的預設按鈕。 
options       :其中一個 MessageBoxOptions 值,指定訊息方塊使用的顯示及關聯的選項。如果要使用預設值,可以傳遞 
0
helpFilePath  :使用者按一下 [說明] 按鈕時所顯示說明檔的路徑和名稱。 
navigator     :其中一個 HelpNavigator 值。 
param         :當使用者按下 [說明] 按鈕時要顯示之說明主題的數字 ID。

傳回值         :其中一個 DialogResult 值。


       DialogResult key = MessageBox.Show(...)方法:是得到消息框中單擊按鈕后返回的的值(實際是作為一個DialogResult枚舉返回,它標識哪些按鈕被單擊)
        e.Cancel = (key == DialogResult.No):判斷窗體是否要關閉
        Cancel 意思為:是否取消該事件,為True時,窗體就不會關閉。為False(默認值)時,那麼事件結束時,窗體就會關閉

转载于:https://www.cnblogs.com/82767136/articles/1254635.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值