DaveB
DaveB

Reputation: 9530

How To Present A Large List Of Items For User To Choose One?

I am building a Silverlight application where one of the tasks will involve the user selecting one item from a list of approximately 1300 items. What would be some of the best ways to present this list to the user? I think 1300 items in a ComboBox is too many. Is it? What are the best practices for this kind of situation? The items are inventory locations that have a pattern such as:

Row 1 - Aisle 1 - Level 1
Row 1 - Aisle 1 - Level 2
...
Row 1 - Aisle 2 - Level 1
...
Row 2 - Aisle 1 - Level 1
and so on.

There will also be some other locations such as: Shipping Dock, Staging Area etc...

I would like to possibly have a TextBox and ListBox where the ListBox would start be populated with matches to what the user enters into the TextBox. The data could be from a web service or stored in Isolated Storage?

Upvotes: 1

Views: 556

Answers (4)

Jacob Adams
Jacob Adams

Reputation: 4004

I agree with both @tom and @davidrutten. Either a treeview or autocomplete type controls sound the best. Look at the TreeView and AutoCompleteBox controls in the Silverlight toolkit

Upvotes: 0

David Rutten
David Rutten

Reputation: 4806

It sounds like your items are highly grouped. This means you can either use a tree-view to present the items, or you can even display an image (floorplan?) of the areas which can be selected.

Having a textbox with autocomplete (and a list of -say- 20 best guesses update in realtime next to the textbox) would be the old-skool way of solving this.

Upvotes: 1

Tom
Tom

Reputation: 44871

Use a list (or table if there's more info) with an edit box above that filters the list based on the text as the user types.

This is different from what's suggested in the question as by default it shows all the data and then filters it down.

Upvotes: 1

Peter
Peter

Reputation: 132327

Yes, 1300 is too many for a combo box. Using a combo box to select my country on a website always seems borderline to me, and 1300 is more than that.

With your data structure I highly recommend choosing row, then aisle, then level as three separate things. Update the next box each time. Within each selection, list boxes are faster to use than combo boxes, but take up more screen space.

Upvotes: 2

Related Questions