Да, вы сделали, но вы не ссылаетесь на aStuff
, вы пытаетесь вызвать его в статической реализации класса, более того, вы сбрасываете aStuff
в отдельный экземпляр через каждую итерацию цикла. Измените свой код до:
Public Shared Sub PopulateTextFields(ByRef stuffList As List(Of Stuff))
Dim aStuff As New Stuff
For Each aStuff In stuffList
aStuff.DoStuff(aStuff)
Next
End Sub
Private Sub DoStuff(ByRef theStuff as Stuff)
....
End Sub
И это должно сработать, но, возможно, не так, как ожидалось, я действительно не знаю, каково ваше намерение иметь закрытый член, который обрабатывает изменение отдельной ссылки своего собственного типа.
Может быть целесообразно изменить подпись DoStuff
на:
Private Sub DoStuff()
....
'Use the Me reference here to change myself
....
End Sub
и затем назовите его так:
aStuff.DoStuff() 'Will modify this instance