Rather than use the OpenForms Collection, I would save a class level Dictionary of Form / ID values:
private Dictionary<int, Chat_Box_Test> Showing = new Dictionary<int, Chat_Box_Test>();
When I create the new form instance to show, I would add it to the dictionary, and add a handler to it's FormClosed event to remove it.
Then, when you want to show one, you can just look in the dictionary to see if it already exists, and add it if not, or bring it to teh foreground if it does exist.