プロジェクト内のすべての閉じたフォームをループし、メッセージボックスを開いてフォーム名を表示する次のコードを見つけました。
ただし、MessageBoxを表示する代わりに、どのように変更すればよいでしょうか。代わりに、実際には閉じた各フォームを1つずつ開きますか?ShowDialogなどを使用して、各フォームが一度に1つだけ開き、一度にすべてが開くわけではないようにします。1つのフォームを閉じるとすぐに、次のフォームが開くようになると便利です。
//http://kellyschronicles.wordpress.com/2011/08/06/show-all-forms-in-a-project-with-c/
System.Reflection.Assembly myAssembly = System.Reflection.Assembly.GetEntryAssembly();
Type[] Types = myAssembly.GetTypes();
foreach (Type myType in Types)
{
if (myType.BaseType == null) continue;
if (myType.BaseType.FullName == "System.Windows.Forms.Form")
{
//Application.Run(myType.Name()); //This does not work
MessageBox.Show(myType.Name);
}
}