For specific Windows Forms Application rules, go to Rules to Better Windows Forms Applications.
There are different ways to align your form labels and each has its own pros and cons.
Labels are essential for guiding users on what information to enter in a form field. To improve readability and consistency, keep labels clean and concise. Avoid unnecessary words and don’t end them with a colon (:), which is a common but outdated practice.
Consistency is a key factor of software development, designing applications that minimise the learning curve through consistent use of componentry and functionality. If buttons with similar functionality are named inconsistently across a web application, it can cause a confusing experience for its users. For example, the buttons used to close a form should be named consistently across your application.
Additionally, buttons should have clear names so the user knows what to expect. For example, it is unclear if a button named Close will save (or not save) when closing, so Cancel would be clearer. A Save button alone is not explicit about the following action for the form (It could close or remain open).
While "OK" buttons were the standard convention with operating systems of the past, web applications should use a more user-friendly approach to dialog boxes. Instead of "OK" buttons to confirm an action the users want, it’s more efficient and effective to give them button that is labeled with that specific action.
Always indicate which fields are required. Users get frustrated when they experience a wasted trip to the server, just because they did not get an obvious indication of what was required first time around.
"Adaptive placeholders" are form labels that become into placeholders and vice-versa, depending on which fields have been filled or not. It gives your website a great UX.
Using mailto: links is a quick way to add contact functionality to a website, but in most cases it creates more problems than it solves - for both users and developers. Clicking a "Contact Us" link should connect a user with your team - not strand them in an unconfigured email client. Yet mailto: links do exactly that for the majority of users, and the problem goes beyond bad UX. They expose email addresses to spam harvesters, break analytics and create false confidence that contact attempts are being tracked.
The words we choose can significantly impact user experience. One such area of careful consideration is the language surrounding user authentication.
When adding input boxes to collect data, please always have a <label> tag associated with your <input> tag to link the labels with their respective edit controls. This improves accessibility and gives nice focusing stuff (when you click the label).
When designing your form, you should try to help your user whenever it's possible. So it's a good idea to include the number of results in ComboBoxes.
When designing your form, you should try to help your user whenever it's possible. So it's a good idea to create a combo-box that has a custom template.
Usually there are problems fitting buttons next to datagrids or listboxes when trying to imply that those buttons add functionality to the datagrid or listbox.
When there are too many choices always Default to the most common ones. Then add a checkbox to allow the advanced users to turn off the common choices.
If the form controls are different entities, they usually have different data and different validation, thus they should not be combined. Having the controls separated also make the form easier to read.
For any case of 'Add New', choose to open a new window (popup) for entering data.
Using a separate menu to maintain ComboBoxes is never a good idea. A better solution is to use an ellipses button to drill down into the menu.
Combining data entry and find navigation is a mistake. I think 2 forms are better than one. I prefer a list box on one form with "Add", "Edit" and "Delete" buttons to a popup form. Rather than a listbox and the data entry fields on one form.
Instead of using plain textboxes for notes, use rich textboxes. It allows you to use links to URLs, formatting (including bold, underline, italics, font type and font size, etc.), bullet points and numbering.
If you want to edit a single item in your form we suggest you use a popup form. This gives each form a definite function and neat UI design.
Despite seeming trivial, the most subtle elements of your form can have the greatest impact on your users.