※ ChatGPTを利用し、要約された質問です(原文:ListにDialogを格納して閉じたら削除 C#)
ListにDialogを格納して閉じたら削除 C#
このQ&Aのポイント
Visual C#で、Listに複数のモードレスダイアログを格納し、一括で最前面表示の有効・無効を切り替える方法について説明します。
リストからダイアログのインスタンスを削除する方法と、ダイアログのクラスからオーナーのFormのプロパティにアクセスする方法についても解説します。
この方法を使用することで、効率的に複数のダイアログを管理し、必要な場合に簡単に削除することができます。
ListにDialogを格納して閉じたら削除 C#
Visual C# で複数のモードレスダイアログを表示させ、
一括で最前面表示の有効・無効を切り替えるために
List配列にインスタンスを格納しました。
・Form1
public List<MyDialog1> dialogList = new List<MyDialog>();
・ボタンのクリック時
MyDialog dialog = new MyDialog();
dialogList.Add(dialog);
動作としては問題なかったのですが、ダイアログを閉じた際
リストからそのダイアログのインスタンスを削除したいのですが、
どのようにすればいいのでしょうか?
現状わからない点は、ダイアログのクラスからオーナーのFormのプロパティにアクセスする方法と、
リスト内のインスタンスのうち、閉じるイベントを発生させたのはどのインスタンスであるかを区別する方法です。
お礼
教えて頂いた方法で正しく動作しました。 インスタンス化する毎に区別するためのIDのようなものが割り振られているのかと思っていました。 ありがとうございます。