J'ai un code qui utilise l'interopérabilité WPF où j'ai l'élément WPF qui est ajouté en tant que contrôle utilisateur dans les formulaires Windows. J'utilise le WPF pour la vue 3D où j'ajoute une sphère dynamiquement et ça marche bien, tout ce que je fais c'est juste envoyer x, y et rayon du formulaire à WPF et ça dessine la sphère. Maintenant, voici le problème que j'ai fait une boucle qui lit la liste des coords et les dessine dans le contrôle WPF, cela fonctionne parfaitement si j'ajoute un MsgBox vide mais si je supprime le MsgBox, il montre seulement la dernière sphère dans la liste, Ex:Si je supprime le MsgBox le code ne fonctionne pas, Comment est-ce possible et comment le réparer?
For Each obj As Sphere in LstSpheres
MsgBox("") 'If I remove this the code doesn't work
CreateSphere(obj.x, obj.y, obj.radius, Brushes.Red) 'This Sub adds the Sphere in WPF Control
Next
Comment est-ce possible, et comment cela peut-il être réparé?
MISE À JOUR:
CreateSphere
Dim S As New Sphere ' a ready made object I took and it doesn't use threaing
S.Radius = Radius
S.X = x
S.Y = y
S.BrushColor = Color
My3DViewport3D.Children.Add(S)
À quoi ressemble la méthode 'CreateSphere'? –
Alors, que se passe-t-il dans CreateSphere? Threading peut-être? Effacer l'écran? –
@Martinho Fernandes Je n'utilise pas de thread, je vais ajouter le code – Kronass