>I would create a Close Event and have the main app listen for that .... don't know if the calling hierarchy is causing a problem or not..
I am not sure I understand the first part. When it is time to close the app, I call the Close() method. There is only one app. It relies on a flag from the database to know if it has to close or not. This is a robot. It loops every minute and checks for that in the first place. If it has to be close, then Close() is called.
This is in reference to thread #
1514219.
The only enhancement I could think of at this point would be to move up the Close() at the higher level, diminishing the risk that calling it several methods down below could have an impact.