Déplacer un rectangle autour d'une toile
J'ai une toile au milieu de mon application avec les contrôles autour d'elle.
J'ai un support qui reçoit des Points et de les enregistrer dans une liste.
Je dessine des petits 4x4 rectangles sur la toile pour le nombre de points dans ma liste..
dit ya 4 points.. il y a 4 rectangles.
Je veux être en mesure de déplacer les rectangles lorsque les points de changement de code.
est-ce possible sans story-board ou tout "animation" de la classe? et comment pourrais-je aller sur le faire ce dont j'ai besoin?
J'ai essayé:
'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)
tous ceux qui, mais aucun de rendre les rectangles déplacer.
et oui j'ai fait en sorte que les données sont en train de changer.
merci beaucoup.
Vous devez vous connecter pour publier un commentaire.
Je pense que plus d'astucieuses solutions sont disponibles par le biais de la liaison de la Toile.Gauche et de la Toile.Top des propriétés attachées à une ObservableCollection
<Point
>, mais comme vous l'avez demandé à l'ancienne, WinForms Style de solution ici, vous avez quelque chose qui fait que je pense que vous avez besoin (Mes excuses pour la rédaction de ce en C#):XAML:
Code derrière:
Utiliser le Rendu de l'événement
...
Envisager d'utiliser CacheMode="BitmapCache" pour eux.