I am developing a Windows Forms application to manage legal documents. Users will enter and modify information about these documents and much of this information is hierarchical. Documents have Parties (persons or businesses) and Comments. Parties have Addresses, Comments, etc. See the chart below.

Documents (document number, date)
-> Parties (party type, party name)
   -> Addresses (street address, city, state, zip)
   -> Comments (comment text, comment date)
-> Comments (comment text, comment date)

The current system uses a hierarchical grid to display and edit the data in-line. To me, this creates a "grid hell" that makes the screen too crowded and difficult to read.

Based on other programs I've seen and on some "best practice" documents I've read, I designed a demo in which separate screens were used. The document screen contained a list of parties. When adding or editing a party, a separate window appears with the party details. If the user wanted to see all data for the entire document together, they could click a button and view it in a report format.

However, I received a lot of negative feedback on this design. The users complained that this would make it more difficult and slow to enter data and they wanted to be able to see and edit everything one one screen.

In my opinion, there is a difference between viewing the data and entering the data. I believe my design allows for better data entry and validation as it allows the screen to focus on a specific party as opposed to using one giant screen for editing all information pertaining to a document.

My question is: Is there a preferred method for data entry of hierarchical data? Is there any proven benefit for one method over another? Are there any other options I'm not aware of?

  • Pretty much any XML/SGML editor has to deal with the same issues. The usual solution is providing several views (tabular, hierarchical, WYSIWYG with placeholders and styles, source code with completion) so that the user could choose what she likes. Apr 12, 2013 at 14:34

1 Answer 1


Frankly speaking, I'm a little bit confused: you have working solution, you have users with engrained habits, but you still want to use totally different solution because you think the screen is too crowded.

User's habits should be respected.

If, as developers, we ignore these habits, we risk violating people's expectations and creating mental roadblocks that our visitors may find difficult to cross. Understanding habits is key to understanding and meeting user expectations. source

My suggestion is to analyze hierarchical grid usage and enhance it. BTW, there are quite a lot of possible options:

  • search
  • filtering
  • sorting
  • visual style

Grid can be very different: ugly, normal or excellent. Not so good example, but please compare:

enter image description here

enter image description here

So, I would suggest to enhance grid functionality and style in order to make users happy.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.