У меня есть холст в середине моего приложения с элементами управления вокруг него. У меня есть сокет, который получает очки и сохраняет их в списке.Перемещение прямоугольника вокруг холста
Я рисую небольшие 4x4 прямоугольники на холсте для количества очков в моем списке. сказать theres 4 балла. Theres 4 прямоугольника.
Я хочу иметь возможность перемещать прямоугольники при изменении точек с помощью кода. это возможно без раскадровки или любого «анимационного» класса? и как я буду делать то, что мне нужно?
Я попытался:
'cMap.Children.Remove(r)
'Dim nr As Rectangle = New Rectangle() With {.Width = 4, .Height = 4, .Name = "r" & P.Name, .Fill = Brushes.Red}
'r.RenderTransform = New TranslateTransform(P.Position.X, P.Position.Y)
Canvas.SetTop(cMap.Children(cMap.Children.IndexOf(r)), (512/2) + P.Position.Y)
Canvas.SetLeft(cMap.Children(cMap.Children.IndexOf(r)), (512/2) + P.Position.X)
'nr.SetValue(Canvas.TopProperty, (512/2) + P.Position.Y)
'nr.SetValue(Canvas.LeftProperty, (512/2) + P.Position.X) ' P.Position.X)
'cMap.Children.Add(nr)
все те, но ни сделать прямоугольники двигаться. и да, я убедился, что данные меняются.
спасибо большое.
см Я попытался Canvas.S etTop (прямоугольник, newPoint.Y); вещь, которую она просто не двигает. – tcables
Ах, посмотрим, что я сделал неправильно, я переписывал каждую точку с новой точкой, а не обновлял точку ..., которая вызвала проблему между потоками. – tcables