Unfortunately this works for a canvas and only very few other elements. For example TreeView (from the Silverlight Toolkit), StackPanel, ComboBox, Grid, etc. don't fire MouseLeftButtonDown events which makes implementation of any drag and drop in Silverlight 2 close to impossible. Looks as if Silverlight 3 may solve this with the ability to register event handlers that are even called if a different event handler set the event to handled. WPF already has that ability. For now Silverlight, at least in version 2 and earlier - doesn't have a sufficient or straight forward solution for drag and drop. :-(
Cheers,
Manfred.
---
Visit my Dot Net blog at: http://manfredlange.blogspot.com
(Update: Silverlight 3 does have the ability to add handlers that respond to all MouseButton cases, so you can make this work for panels that do built-in event handling. See
http://msdn.microsoft.com/en-us/library/ms598899(VS.95).aspx .)