У меня есть холст, и внутри него будет форма.Этот холст имеет обработчик событий MouseLeftButtonDown
.Затем я переместил фигуру на холсте в новое место, однако ничего не происходит.
Вот как эта фигура добавляется:
public MainWindow()
{
InitializeComponent();
Rectangle ShapeRect = new Rectangle() { Width=10,Height=10,Fill=Brushes.Blue};
Canvas_1.Children.Add(ShapeRect);
}
Вот обработчик события:
private void Canvas_1_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Canvas c = Canvas_1;
var firstchild = c.Children[0];
var RectCopy = c.Children.OfType<Rectangle>().FirstOrDefault();
Canvas.SetTop(RectCopy, Canvas.GetTop(RectCopy) + 500);
Canvas.SetLeft(RectCopy, Canvas.GetLeft(RectCopy) + 500);
}
Я протестировал код, в котором нет ошибок, и все строки выполняются, но явно не имеют никакого эффекта.Я думаю, это связано с тем, что RectCopy
не ShapeRect
.Любое другое решение или ответы приветствуются.Спасибо.