protected override void OnMouseDragBegin(int x, int y) { if (canParentProvider.CanDropFromSelectedToolboxItem(null, true)) { if (ModifierPressed(Keys.Alt)) { //select column Point pt = tableControl.PointToClient(new Point(x, y)); TableHitTestResult result = tableControl.HitTest(pt); if (result.Area == TableHitTestArea.OnColumn && result.TableColumn != null) { ISelectionService service = (ISelectionService)this.GetService(typeof(ISelectionService)); if (service != null) { SelectionTypes selectionType = SelectionTypes.Auto; service.SetSelectedComponents(new object[] { result.TableColumn }, selectionType); return; } } } if (ModifierPressed(Keys.Shift)) { SelectAttachedControls(); return; } base.OnMouseDragBegin(x, y); } }
protected override bool GetHitTest(System.Drawing.Point point) { bool result = base.GetHitTest(point); point = tableControl.PointToClient(point); TableHitTestResult hitTestResult = tableControl.HitTest(point); if (hitTestResult.Area == TableHitTestArea.OnHeader || hitTestResult.Area == TableHitTestArea.OnNonClientArea) { result = true; } return(result); }