There are endless numbers of details you have to contend with when building great software. So it is easy to forget about some of the small ones, especially when it comes to the UI. So I use a checklist like this one to help ensure I covered all of my bases.
Form
- Related controls are grouped together
- Controls are in a logical sequence
- Controls are aligned appropriately
- Tab order is set
- Standard font family and size are set
- Title bar text is descriptive
Modal Dialog
- Minimize button disabled
- Maximize button disabled
Resizable Dialog
- Minimum size defined
- Prevents the form from being resized too small to be usable
- Controls appropriately anchored/docked to size as the dialog resizes
- No resize code should be required in most cases
Controls
- All text is spelled correctly
- Labels are consistent in tense and terminology
- Tooltips defined on all appropriate controls
- Disabled controls are grayed out and not accessible
- Buttons are all a consistent size and location on the screen
Validation
- All required fields are validated
- All required fields are distinguished in some manner, such as bolding the label, adding an asterisk, or highlighting the control (pick one technique and use it consistently)
- All numeric fields are validated
Use this checklist as you finish each one of your WinForm UI components so you don't have to sweat the details.
Enjoy!