C#で私のカスタムアプリケーションのためのfolderbrowserを作成しようとしていますが、folderbrowserのことは問題ありませんが、デフォルトのものがどのように動作するかのように。
@Kevinによれば、私はモーダルダイアログを作成しようとしています。モーダルダイアログを作成し、子フォームからフィードバックを受け取る方法(folderbrowserコントロールなど)
// Create the control and receive whether or not it should read fixed drives and also get a reference to the parent control.
public FolderBrowser(Form1 frm1, bool allowFixed)
{
InitializeComponent();
this.allowFixed = allowFixed;
frm1.Enabled = false;
}
このダイアログが作成されたときに、私は、メインフォームをフリーズ:
// I create the folderbrowser control and await the directory
string CreateFileDialog(bool allowFixedDrives)
{
FolderBrowser fb = new FolderBrowser(this, allowFixedDrives);
fb.Show();
//return THE_SELECTED_FOLDER_DIR;
return "";
}
だからfolderbrowserにも固定ドライブを許可するブールと親フォームへの参照があります。
ユーザーがフォームを閉じると、nullまたは ""が返され、ユーザーがOKを押すと、選択したディレクトリ(THE_SELECTED_FOLDER_DIRがある場所)が返されます。
親フォームにフィードバックを送信するダイアログをきれいに実装する方法を知っている人はいますか?
あなたは私が:)
あなたがしようとしているのは、モーダルダイアログです。 – Kevin
うん。はい。だから私はこれをどのように実装するのですか?また、ポインタのおかげで。 – CausticLasagne
Form.Showメソッドではなく、Form.ShowDialogメソッドを使用します(親に参照を渡します)。 – Kevin