private void PlotPointDragDrop() { TraggingStatus status = activatingStatus.TragStatus; activatingStatus.TragStatus = TraggingStatus.标绘模式; Mouse.Capture(this); var dragDrop = _mouseEventSource.MouseDragDrop; dragDrop.Subscribe( p => { if (IsOperableRadarArea()) { var position = _locatorBorder.Locator.ScreenToMap(p.X, p.Y); _plottingArea.RevisePointData(new PointD() { X = position.Lon, Y = position.Lat }, _plottingArea.SelectedIndex); } }, () => { Mouse.Capture(null); activatingStatus.TragStatus = status; } ); }
private ActivatingStatus() { _chartStatus = ChartsStatus.移动海图; _tragStatus = TraggingStatus.海图模式; }