Привязка позиции фигуры с меткой, чтобы при перемещении фигуры метка перемещалась вместе с ней - PullRequest
0 голосов
/ 11 июля 2019

У меня есть приложение, в котором я выбираю фигуры на панели инструментов и добавляю метку по щелчку правой кнопкой мыши в качестве имени фигуры в том месте, где она нажата.Теперь, когда фигура перемещается, я хочу, чтобы метка двигалась вместе с ней, что происходит, но положение метки меняется в зависимости от того, где я нажимаю на фигуру.Смещается на некоторое расстояние.Я хочу, чтобы этикетка оставалась в том же положении относительно формы, но все еще двигалась и помните, что моя этикетка также может быть подвижной.Итак, я не хочу ничего, что мешало бы этому.Как это исправить?

  void UpdateUILabelPosistion(Control element)
    {
        var label = element as Label;
        foreach (var shape in m_Shapes)
        {
            if (label.Content.ToString() == shape.Name)
            {
                SelectedShape = shape;
            }
        }
        Task t1 = new Task(() =>
        {
            while (isSelected)
            {
                element.Dispatcher.Invoke(new Action(delegate ()
                {
                    //    var pt = SelectedShape.LabelPosition - Mouse.GetPosition(Canvas);
                    //   DragDrop.DoDragDrop(label, label.Content, DragDropEffects.Move);
                    label.Margin = new Thickness(Mouse.GetPosition(null).X, Mouse.GetPosition(null).Y, 0, 0);
                }));
            }
        });
        t1.Start();
    }
...