It seems you were on to the right idea. A static class (doesn't need to be instantiated and thus only one of each of its members will exist) with static (thus, unique) variables that is publically accessible. This should solve your problem..
Global variables are evil. Needless to say. A static class is similar in behavior as a VB module (last I checked, it's been a while and I don't use static classes).
Basically, I needed to have a series of values that act as flags to tell me if a dialog box was closed (as in the user clicked either OK, Yes, No, Cancel, etc).
Can someone else think of a better way to get this value from another form via code?
Basically, Form1 opens Form2. Form1 waits until Form2 is closed. But I need to know which button (OK or Cancel) was pressed on Form2 so that Form1 can act accordingly without guessing or crashing the app.
The ShowMessageBox() method returns a DialogResult enum. Use that instead. If you're trying to capture the output of a form, why don't you try attaching an event in Form1 from Form2? That or create a property that returns the message it needs to return.