private void ShellTreeView_GiveFeedback(object sender, GiveFeedbackEventArgs e) {
e.UseDefaultCursors = true;
var doo = new System.Windows.Forms.DataObject(this._DataObject);
if (doo.GetDataPresent("DragWindow")) {
IntPtr hwnd = ShellView.GetIntPtrFromData(doo.GetData("DragWindow"));
User32.PostMessage(hwnd, 0x403, IntPtr.Zero, IntPtr.Zero);
} else {
e.UseDefaultCursors = true;
}
if (ShellView.IsDropDescriptionValid(this._DataObject)) {
e.UseDefaultCursors = false;
Cursor.Current = Cursors.Arrow;
} else {
e.UseDefaultCursors = true;
}
if (ShellView.IsShowingLayered(doo)) {
e.UseDefaultCursors = false;
Cursor.Current = Cursors.Arrow;
} else {
e.UseDefaultCursors = true;
}
base.OnGiveFeedback(e);
}