2012-02-23 12 views

答えて

0

私はあなただけでこのコードを使用してapplication.xaml.vbウィンドウに移動する必要がありますが、VBやC#を使用している場合は知っているが、Vbの上でいけない:

Protected Overrides Sub Finalize() 
msgBox("Closing") 
End Sub 

、その後、あなたは閉じるボタンを押すたびにメッセージボックスが表示されます。

+0

私はC#の申し訳ありませんといけない仕事VBで私が唯一知っているのC# – Nadeem

+0

にはファイナライズ()はありません。 – Rui

+0

メッセージボックスを表示するための 'Finalize()'メソッドをオーバーライドすることは、あなたがしなければならないことではありません。 'Finalize()'は、オブジェクトがGCによって収集されているときにリソースをクリーンアップするために予約されています...クローズメッセージを表示しません。オーバーライドを行う場合は、少なくともOnClosing()メソッドをオーバーライドしてください。 –

1

あなたはメッセージをメッセージボックスに入れることができます。

e.Cancel = trueの場合、ウィンドウの閉じる操作をキャンセルできます。

3

Closingイベントにハンドラを追加してメッセージボックスを表示するだけです。ユーザーが選択するオプションに応じてイベントをキャンセルします。 C#ので

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     Closing += new System.ComponentModel.CancelEventHandler(MainWindow_Closing); 
    } 

    void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) 
    { 
     if (MessageBox.Show("ARE YOU WANT TO CLOSE?", "CLOSING", MessageBoxButton.YesNo) == MessageBoxResult.No) 
     { 
      e.Cancel = true; 
     } 
    } 
} 
+0

ありがとうございます – Nadeem