Q:

Design pattern for drag drop within a ListBox?

Need advice on how to build an intuitive UI:
I have a ListBox of items, that can be re-ordered by drag drop.
I get to this screen when I add a new item. Now this new item needs to be inserted into this ListBox. Are there any alternatives to drag drop to make it more intuitive?
One of the things we were considering would be to always add this new item to the END of the list and let the user re-order it. etc.
The point here is to make sure that the new item is re-ordered by the user or he has made a conscious decision that the item is at the correct location.
Thanks.

A:

I think physically grabbing the item and dragging it where you want is about as intuitive as it gets (it's what you would do with an object in the real world).
Where to put the item is a little more tricky. If you have a very long list of items there will be a bit of scrolling to get to the item, and there is a risk that the user may not even notice that it is there. You could put it at the top of the list, but this could cause problems if the user doesn't notice it and just accepts the order as is.
The only way to be certain that the user has deliberately put the item in a particular position is to initially display the new item(s) in a staging area and force them to drag it out of there and into the list.

