Sorry for the delayed reply!
The appropriate Silverlight application model is a bit different than asp.net, but I am sure that you will quickly start feeling at home with it.
Some of the differences are attached properties and routed events. Generally it is best to have DataObjects which represent your data, ViewModels which are very much alike the DataItems, but have extra logic and properties that are not part of the DataModel.
Then the UI elements will wrap around and bind to the ViewModels.
You indeed do not need to inherit the DependencyObject, in fact it is best not to.
Since the RadTreeView is data bound, you can use the ItemContainerStyle to set properties to the container (the wrapping RadTreeViewItem). So could you try the suggested xaml addition for the tree view you want to make draggable:
| <Style TargetType="nav:RadTreeViewItem">
| Value="True" />
This xaml sets the AllowDrag attached property to all the TreeViewItems of the TreeView.
It this will make sure that routed events start travelling from the TreeViewItems to the application root visual and you can handle them anywhere you like, even in its parent UserControl from another assembly.
If you need more help with this, please come back to us.
the Telerik team
Check out Telerik Trainer
, the state of the art learning tool for Telerik products.