Я знаю, что есть много вопросов, связанных с этим, но все же я не могу найти работоспособное решение.VB.NET Call Sub другой формы
Как правило, это будет выглядеть так: форма создает экземпляр другой формы в это контейнер, как это:
Dim PolInstIn As New SubForm1
Private Sub LoadDetail()
PolInstIn.TopLevel = False
PolInstIn.Name = "Sub From"
PolInstIn.FormBorderStyle = Windows.Forms.FormBorderStyle.None
PolInstIn.Dock = DockStyle.Fill
Me.GroupBox6.Controls.Add(PolInstIn)
PolInstIn.Show()
End Sub
Тогда легко вызвать Public Sub от формы к югу, как это:
Call PolInstIn.MyPublicSubInSubForm1()
Однако в этом случае это не работает. Когда я запускаю MyPublicSubInSubForm1(), он не вызывает никаких ошибок, но не выполняет никаких действий. Если я пишу значение в текстовое поле SubForm1 и читаю его обратно, он читает, но я не вижу его на экране, поэтому я подозреваю, что он написан на другом случайном экземпляре.
Я подозреваю, что моя родительская форма также является экземпляром формы, созданной очень похоже на SubForm1. В основном ParentForm - это форма, загружаемая в tabPage, а SubForm1 - это модуль, загруженный в ParentForm. Он может существовать во многих экземплярах (вкладках).
Не могли бы вы указать на любые простые решения?
С уважением,
Libor
Это позволит вызывать подгрузку LoadDetail в известном экземпляре формы. Проблема выше заключалась в определении/поиске acutal экземпляра. Я разрешил его, указав объект-объект родительской формы в дочерней форме и при создании экземпляра дочерней формы я назначаю экземпляр родительской формы в объект. Я отвечу на этот вопрос (я должен был это сделать ...) –
хорошие новости. я улучшу свой код с вашими предложениями. Спасибо, парни –