private void team_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { System.Windows.Shapes.Rectangle r = sender as System.Windows.Shapes.Rectangle; _isRectDragInProg = r.CaptureMouse(); movingRectangle = r.Name; }
/// <summary> /// 图像容器的左击鼠标事件,用于处理图像在容器中的移动始。 /// </summary> private void BackFrame_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { System.Windows.Shapes.Rectangle img = sender as System.Windows.Shapes.Rectangle; if (img == null) { return; } img.CaptureMouse(); mouseDown = true; mouseXY = e.GetPosition(img); }
private void drawingPanelMouseDown(object sender, MouseButtonEventArgs e) { _capturedPosition = e.GetPosition(drawingPanel); _mouseCaptured = true; _newRect = true; var rect = new Rectangle { Height = 1, Width = 1, Opacity = 0.2 }; drawingPanel.Children.Add(rect); Canvas.SetLeft(rect, _capturedPosition.X); Canvas.SetTop(rect, _capturedPosition.Y); rect.CaptureMouse(); rect.MouseMove += (_s,_e) => { if (_mouseCaptured) { if (_capturedPosition.Y < _e.GetPosition(drawingPanel).Y) { rect.Height = _e.GetPosition(drawingPanel).Y - _capturedPosition.Y; } else { rect.Height = _capturedPosition.Y - _e.GetPosition(drawingPanel).Y; Canvas.SetTop(rect, _e.GetPosition(drawingPanel).Y); } if (_capturedPosition.X < _e.GetPosition(drawingPanel).X) { rect.Width = _e.GetPosition(drawingPanel).X - _capturedPosition.X; } else { rect.Width = _capturedPosition.X - _e.GetPosition(drawingPanel).X; Canvas.SetLeft(rect, _e.GetPosition(drawingPanel).X); } } }; rect.MouseLeftButtonDown += (_s,_e) => { }; rect.MouseRightButtonDown += (_s, _e) => { drawingPanel.Children.Remove(rect); }; rect.MouseUp += (_s, _e) => { _mouseCaptured = false; _newRect = false; rect.ReleaseMouseCapture(); ReleaseMouseCapture(); }; }
public bool Capture(Point pt) { this.tub = get_tier_ui(pt); if (tub == null /*|| tub.TiersControl.Items.Count == 1*/) return false; pt.X = 0.0; pp_offs = mg.TransformToDescendant(tub).Transform(pt); pp_offs.X += tub.Margin.Left; pp_offs.Y += tub.Margin.Top; var sz = new Size(tub.ActualWidth, tub.ActualHeight); this.tui = new Rectangle { Fill = new ImageBrush { ImageSource = __util.GetImage(tub, null, sz), Stretch = Stretch.None }, Width = sz.Width, Height = sz.Height, Margin = tub.Margin, }; this.bb = BindingOperations.GetBinding(tub, VisibilityProperty); BindingOperations.ClearBinding(tub, VisibilityProperty); tub.Visibility = Visibility.Hidden; mg.Children.Add(tui); return tui.CaptureMouse(); }