What-ho,<br><br> does anyone know how to use OLE between controls on a form? More specifically, I'm trying to use the OLEStartDrag event of a tree view control to copy data from that control to a text box control. All the code for this is in the OLEStartDrag event:<br><br>Private Sub treeLinks_OLEStartDrag(Data As MSComctlLib.DataObject, AllowedEffects As Long)<br> AllowedEffects = vbDropEffectCopy<br> Data.Clear<br> Data.SetData treeLinks.SelectedItem.Text, vbCFText<br>End Sub<br><br> However, what seems to be happening is that the node I'm trying to select from the tree view control only becomes the SelectedItem on the mouse up event, so it's not yet selected when the OLEStartDrag event is fired, as, by essence, I'm dragging and I've not yet released the mouse button. The result of this is, the node I drag from isn't the node that's selected and when I release the mouse and finish the OLE drag, it drops the wrong data (it drops data relevant to whichever node is actually the SelectedItem in the treeview control). I was wondering if there's some way of changing the SelectedItem in the treeview control on the treeview Mouse_Down event, but I can't figure out how to detect which node I'm over when the Mouse_Down event is fired. If there's a better (correct) way of using OLE like this, can anyone please help?<br><br> Thanks,<br><br> Paul