したがって、基本的に、特定のクライアント (識別子) に対して開かれたすべてのフォームを格納する辞書があります。このクライアントが切断されると、クライアントに対して開かれたすべてのフォームを閉じる必要があります。
しかし、各フォームで Close() を呼び出すと、Dictionary が変更され、「InvalidOperationException:Collection was modified; enumeration operation may not execute.」という例外が発生します。
私のコード:
foreach (var KeyValuePair in Clients[Identifier].Windows)
{
KeyValuePair.Value.Close();
}
これを行う別の方法はありますか?