У меня есть форма (MainForm) с панелью (panelMain), в которой я буду динамически загружать пользовательский контроль.
Я загружал свой пользовательский контроль динамически, используя это:
Private Sub MainForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
PanelMain.Controls.Add(ControlDetails.getInstance)
ControlDetails.getInstance().Dock = DockStyle.Fill
ControlDetails.getInstance.BringToFront()
End Sub
внутри ControlDetails.vb у меня есть:
Public Class ControlDetails
Private Shared instance As ControlDetails
Public Shared Function getInstance() As ControlDetails
If (instance Is Nothing) Then
instance = New ControlDetails()
End If
Return instance
End Function
, затем, если я набрал что-то в текстовом поле внутри usercontrol и закрыл форму с помощью кнопки с кодом Me.Close (), то вещи, которые я написал, все еще сохраняютсяв текстовом поле, если я снова открыл форму
Я открываю MainForm, используя это:
Dim mainF As New MainForm
mainF.ShowDialog(Me)
я хочу, чтобы, когда я снова открыл форму, я хотел, чтобы она выглядела каккогда я впервые открыл его (без текстовых сообщений в текстовом поле или других изменений, которые я сделал до того, как я ранее закрыл форму)
Я пытался использовать Me.Dispose () в кнопке, чтобы закрытьформе, но я получаю сообщение об ошибке в строке showDialog (me), в которой говорится, что в Bunifu_UI_v1.5.3.dll произошло необработанное исключение типа 'System.NullReferenceException', может быть, это ошибка из инфраструктуры bunifu,Я установил, но Me.Close () работает, поэтому в настоящее время я использую его для закрытия формы с помощью кнопки.