DialogBox

C# で DialogBox を表示します。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プログラムの説明

  1. C# で DialogBox を生成して Form1 から呼び出します。
    プロジェクトは Form-2 と同じ要領なので参考にして下さい。
  2. Visual Studio を起動して[ファイル/新規作成/プロジェクト]から WindowsFormsApplication を作成します。
    ソリューションエクスプローラで、[追加/Windows フォーム]から[Windows フォーム]を追加します。
    Form1 と Form2 の二個の Form が作成されます。
  3. Form1 にボタンを貼り付けて、イベントハンドラ(Button_Click)を作成します。
    DialogBox を呼び出す Button_Click メソッドです。
    Form-2 では MyForm2.Show(); で呼び出しましたが、今回は MyDialog.ShowDialog(); で呼び出します。
        private void Button_Click(object sender, EventArgs e)
        {
            Form2 MyDialog = new Form2();
            MyDialog.ShowDialog();
        }
    
  4. Form2 のプロパティを DialogBox らしく設定します。 (^_^;)
    • ControlBox を false に設定する。
    • MaximizeBox を false に設定する。
    • MinimizeBox を false に設定する。
    • FormBorderStyle を FormBorderStyle.FixedDialog に設定する。
  5. Form2 にボタンを貼り付けます。
    ボタンのプロパティから Text に OK をタイプすると、ボタン表示が OK に変わります。
    Button.DialogResult プロパティで OK を選択します。
    ボタンの EventHandler は必要ありません。
  6. プロジェクトを実行すると Form1 が表示されます。
    ボタンをクリックすると MyDialog(Form2) が表示されます。
    Form2 のボタンをクリックすると Form2 が閉じます。
    Form2 を表示中は、Form1 は操作出来ません。

MyDialog Class

  1. MyDialog Class を直接定義します。
    要領が解れば Visual Studio で操作するよりも簡単です。
    また完成したプロジェクトもすっきりします。
  2. 自動生成で Main のプロジェクトを構築します。
    Form1 にボタンを貼り付けます。
    Button_Click() メソッドです。
        private void Button_Click(object sender, EventArgs e)
        {
            MyDialog Mydlg = new MyDialog();
            Mydlg.ShowDialog();
        }
    
  3. MyDialog Class です。
    先に作成した Form2 と同じ仕様で MyDialog Class を直接定義します。
    今回は class Form2 に代えて Dialog らしい名前(MyDialog)を使ってみました。 (^_^;)
    Form1.cs の最後に追加して下さい。
    class MyDialog : Form
    {
        public MyDialog()
        {
            Text = "ダイアログボックス";
            FormBorderStyle = FormBorderStyle.FixedDialog;
            ControlBox = false;
            ShowInTaskbar = false;
            MaximizeBox = false;
            MinimizeBox = false;
            Button btnOK = new Button();
            btnOK.Text = "OK";
            btnOK.Parent = this;
            btnOK.Location = 
                new Point((ClientSize.Width - btnOK.Width) / 2,
                ClientSize.Height - btnOK.Height - 10);
            btnOK.DialogResult = DialogResult.OK;
        }
    }
    
  4. プロジェクトを実行すると Form1 が表示されます。
    ボタンをクリックすると MyDialog が表示されます。

超初心者のプログラム入門(C# Frame Work)