📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の2版が非表示)
32行目: 32行目:
<br>
<br>
<center>
<center>
{| class="wikitable" style="background-color:#fefefe;"
{| class="wikitable" | style="background-color:#fefefe;"
|+ Windowクラスの主要なプロパティ
|+ Windowクラスの主要なプロパティ
|-
|-
299行目: 299行目:


== ウインドウイベントを処理する例 ==
== ウインドウイベントを処理する例 ==
以下の例では、ウインドウの主要なイベントである[開く]ボタンおよび[閉じる]ボタンを押下した時のイベント処理を示している。<br>
<br>
* Openedイベント (ウインドウが開いた時)
*: Openedイベントは、ウインドウが画面に表示された直後に発生する。
*: OnWindowOpenedメソッドで処理される。
*: <br>
*: 例: ウインドウを開いた直後に初期化処理を行う場合に使用する。(データの読み込み、UIコンポーネントの設定、外部リソースとの接続等)
*: <br>
* Closingイベント (ウインドウが閉じる直前)
*: Closingイベントは、ウインドウを閉じる直前 (例: [閉じる]ボタンを押下した直後) に発生する。
*: OnWindowClosingメソッドで処理される。
*: <br>
*: 例: ユーザが誤ってウインドウを閉じることを防ぐ、または、保存されていない変更がある場合に警告を表示する等のロジックに適している。
*: <br>
* Closedイベント (ウインドウが閉じられた後)
*: ウインドウが完全に閉じられた後に発生する。
*: OnWindowClosedメソッドで処理される。
*: <br>
*: 例: リソースの解放、ログの記録、他のウインドウへの通知等、ウインドウが閉じられた後のクリーンアップ処理に適している。
<br>
  <syntaxhighlight lang="c#">
  <syntaxhighlight lang="c#">
using Avalonia.Controls;
using Avalonia.Interactivity;
using MsBox.Avalonia;
using MsBox.Avalonia.Enums;
  public class EventHandlingWindow : Window
  public class EventHandlingWindow : Window
  {
  {
316行目: 341行目:
     }
     }
   
   
     private void OnWindowClosing(object sender, WindowClosingEventArgs e)
     private async void OnWindowClosing(object sender, WindowClosingEventArgs e)
     {
     {
       var result = MessageBox.Show("Are you sure you want to close?", "Confirm", MessageBoxButton.YesNo);
      // 一時的にキャンセルして、ダイアログの結果を待つ
       e.Cancel = (result == MessageBoxResult.No);
      e.Cancel = true;
      // ウインドウの閉じる操作を一時的に中断する場合、ユーザに終了確認ダイアログを表示する
       var messageBox = MessageBoxManager.GetMessageBoxStandardWindow("Confirm",
                                                                      "Are you sure you want to close?",
                                                                      ButtonEnum.YesNo);
       var result = await messageBox.Show();
      if (result == ButtonResult.Yes)
      {    // [Yes]ボタンを押下した場合、ウインドウを閉じる
            e.Cancel = false;
        }
     }
     }
   
   
532行目: 569行目:
<br><br>
<br><br>


{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:C_Sharp]]
[[カテゴリ:C_Sharp]]