It had been nagging me for a while. When I started building this application, I reached into my code library and started copying and pasting various bits and pieces.
One in particular was an Error dialog control. My exception framework uses this form to display errors to the user. Depending on the type of exception, the interface changes to reflect the severity and type.
The original control was built nearly 6 years ago, so I quickly modified the internals (overloaded the constructor) to accept the new applications typed exception and thought no more it.
There are no technical issues with it. It works. But boy, it is UGLY when compared to the rest of application.
So I set about to change the interface. A fairly risky proposition in a stable application. The exception framework abstracts the calling of this control, so it has a very minimal profile to the rest of the application.
Feeling brave, I dove right in...
The image below shows a database violation. I have deliberately blanked out the name of the application.
The client is a fan of "Little Britain" and insisted on the text in the form header.
The "Details" tab displays the stack trace, and the "Environment" contains information about the computer, OS and the applications state.
So what do you think?