In RadTreeList, we cannot successfully determine the place where the reordered item will appear. There are many factors to consider, that make the destination of the dragged items indeterminate:
RadTreeList is a databound control and item order is based on what gets passed as a data source and what sorting is applied to the control. We cannot determine the final destination of the item based on where it is dropped. We do not know if this item is going to get placed there, or will appear above or below after databinding.
. As a hierarchical and, at the same time pageable, control, item reordering changes the visibility of the items on the current page. This makes the final order and visibility of the items unpredictable by the time of the drag-and-drop action.
3. Lack of API to specify position when updating data
. When implementing item reordering in a databound, hierarchical control, what can you really change? The only thing that you can update is the foreign key of the dragged records. This is what determines your hierarchical order and this is the only data that your hierarchical tree is based on. Being able to change only the foreign key, you are only ever sure about 1 result - that the dragged items will be assigned as children of the destination item. In what order? This is beyond the scope of RadTreeList.
As a final note, let me argue that comparing a data-bound control with an unbound control in terms of item reordering is incorrect. An unbound control like a TreeView is always richer in terms reordering capabilities, because the control itself specifies the order of appearance of its items. This is not the case with a data-bound control such as RadTreeList, where item order is not determined by the control, but externally enforced - through the natural order of the data and the sorting expressions that are to be applied.
For all the above mentioned reasons, we cannot reliably provide an API (or a visual interface) for targeting a specific item position in the hierarchical item tree in RadTreeList.
the Telerik team
Check out Telerik Trainer
, the state of the art learning tool for Telerik products.