2009-09-07 16 views
4

私はWinFormアプリケーションで入力モーダルを表示したいと思います。私はウェブの周りを見ているが、これを行うための良いパターンを見つけていない。別のフォームを作成して、ShowDialogメソッドを使用する必要があることを理解します。WinFormsで入力ダイアログを表示

+0

http://www.reflectionit.nl/Articles/InputBox.aspxには例があります。 –

答えて

15

あなたは正しいです。 、(私はFrmModal呼ばれている)新しいフォーム自体に

using (FrmModal myForm = new FrmModal()) 
{ 
    DialogResult dr = myForm.ShowDialog(); 
    if (dr == DialogResult.OK) 
    { 
     // ... 
    } 
    else 
    { 
     // ... 
    } 
} 

設定:モーダルダイアログが自動的に(非モーダルダイアログとは違って)閉じたときのような模様をしたいので、配置されていないことを

注意ボタンイベントハンドラのDialogResultプロパティを適切に、例えばOKボタンがある場合は、そのボタンのイベントハンドラでDialogResult = DialogResult.OKを設定し、フォームを閉じるためにClose()を呼び出します。

+1

小さなコメント:Forms DialogResult!= noneを設定するだけで閉じることができます。 –

関連する問題