動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About
C#

ShowDialogはモーダル—呼び出し側が止まる

出典: C# WinForms の Form.ShowDialog と Form.Show の違いと使い分け完全ガイドShowDialogはモーダル—呼び出し側が止まる

ShowDialogはモーダル—呼び出し側が止まる (csharp)#e8e9c186bc59
//親フォーム側
private void btnSelectMaster_Click(object sender, EventArgs e)
{
    using (var dlg = new MasterSelectForm())
    {
        //この行で止まる。dlgが閉じるまで次の行は実行されない
        var result = dlg.ShowDialog(this);
 
        if (result == DialogResult.OK)
        {
            // dlg.SelectedIdみたいなプロパティで結果を引き取る
            txtMasterId.Text = dlg.SelectedId;
        }
    }
    // usingブロックを抜けたタイミングでDisposeされる(後述のハマりポイント①参照)
}
▸ この snippet は実行結果未収録
▸ 実行結果は未収録です
  • id: #e8e9c186bc59
  • lines: 16
  • extracted: 2026-06-10

Source収録記事

この snippet は記事の「ShowDialogはモーダル—呼び出し側が止まる」セクションに登場する。コードの前後の文脈・ハマりどころの解説は記事本文で。

同じ記事から

9
図鑑トップ