У меня есть код, который использует функциональную совместимость WPF, где у меня есть элемент WPF, который добавляется в качестве пользовательского элемента управления в формах Windows. Я использую WPF для трехмерного просмотра, где динамически добавляю сферу, и она отлично работает, все, что я делаю, это просто отправляю x, y и радиус из формы в WPF, и она рисует сферу.
Теперь здесь проблема в том, что я сделал цикл, который читает список координат и рисует их в элементе управления WPF, он отлично работает, если я добавляю пустой MsgBox, но если я удаляю MsgBox, он показывает только последнюю сферу в списке, например,
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
Как это возможно и как это можно исправить?
ОБНОВЛЕНИЕ:
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)