private void OnMouseMoves(MouseEventArgs e) { //Ищем Canvas ViewNodesCanvas NodesCanvas = MyUtils.FindParent <ViewNodesCanvas>(this); ViewModel.EndPoint.Set(e.GetPosition(NodesCanvas)); e.Handled = true; }
void UpdatePosition() { Point position = new Point(); //Если отображается if (this.IsVisible) { //Ищем Canvas ViewNodesCanvas NodesCanvas = MyUtils.FindParent <ViewNodesCanvas>(this); position = this.TransformToAncestor(NodesCanvas).Transform(position); this.ViewModel.Position.Set(position); } }
void UpdatePosition() { // Координата центра Point InputCenter = Form.TranslatePoint(new Point(Form.Width / 2, Form.Height / 2), this); //Ищем Canvas ViewNodesCanvas NodesCanvas = MyUtils.FindParent <ViewNodesCanvas>(this); if (NodesCanvas == null) { return; } //Получаем позицию центру на канвасе Point Position = this.TransformToAncestor(NodesCanvas).Transform(InputCenter); this.ViewModel.PositionConnectPoint.Set(Position); }
/// <summary> /// Обновить координату центра круга /// </summary> void UpdatePositionConnectPoin() { Point positionConnectPoint; //Если отображается if (this.IsVisible) { // Координата центра positionConnectPoint = Form.TranslatePoint(new Point(Form.Width / 2, Form.Height / 2), this); //Ищем Canvas ViewNodesCanvas NodesCanvas = MyUtils.FindParent <ViewNodesCanvas>(this); //Получаем позицию центру на канвасе positionConnectPoint = this.TransformToAncestor(NodesCanvas).Transform(positionConnectPoint); } else { //Позиция выхода positionConnectPoint = this.ViewModel.Node.Output.PositionConnectPoint.Value; } this.ViewModel.PositionConnectPoint.Set(positionConnectPoint); }