コンパクトなフレームワークのappliactionでボタンを閉じる(右上隅のX)タップ(クリック)して自分のアクションを行いたい。私はWindows Mobile 6.1を使用しています。コンパクトなフレームワークのアプライアンスでフッククローズ(X)ボタン
通常はデフォルトの動作が必要ですが、現在のフォームでusercontrolを変更したいことがあります。どうすればそれに到達できますか?
ありがとうございます!
コンパクトなフレームワークのappliactionでボタンを閉じる(右上隅のX)タップ(クリック)して自分のアクションを行いたい。私はWindows Mobile 6.1を使用しています。コンパクトなフレームワークのアプライアンスでフッククローズ(X)ボタン
通常はデフォルトの動作が必要ですが、現在のフォームでusercontrolを変更したいことがあります。どうすればそれに到達できますか?
ありがとうございます!
(X)ボタンはではありません閉じるボタン、スマートミニマイズボタンです。直接フックすることはできません(おそらくDeactivatedイベントが発生しますが、キャンセルすることはできません) 。
フォームのMinimizeButtonプロパティをfalseに変更すると、処理できる(ok)ボタンに変わります(Petrosが指摘するように)。おそらく、IMessageFilterを使用するか、フォームをサブクラス化してWinProcをフックして、minimizeイベントを保持することもできます。
も参照してください:
は、私はあなたが何をしたいのか理解していれば:
private void Form1_Closing(object sender, CancelEventArgs e)
{
e.Cancel = true;
//Do my own thing
}
あなたは提供とフォームの「閉じる」イベントのイベントハンドラことができます。 e.Cancel = trueとすると、フォームを閉じたくないと言い、それからやりたいことは何でもできます。
MinimizeBox = falseを設定した場合(@ctackeが書き込んだ)、このイベントが発生します。ありがとう。 – TcKs
あなたが探している機能がSHDoneButtonです。
SHDB_SHOWCANCELのdwStateを使用して呼び出すと、「Smart Minimize」ボタンの動作がWM_COMMANDメッセージを出力するだけに変更されます。その後、WM_COMMANDメッセージを受信する必要があるのはsetting a custom WndProcです。
ありがとう、私はMinimizeButtonプロパティを変更して、Closeイベントをフックしようとします。 – TcKs