form.showdialog затем form.close / или form.dispose выбрасывает System.NullReferenceException: «Ссылка на объект не установлена ​​для экземпляра объекта». - PullRequest
0 голосов
/ 24 февраля 2019

У меня странная проблема.Конечно, многие из вас сделали что-то похожее на form.showdialog (), а затем закройте это Me.Close ().У одной формы есть этот код.

FSettling.CallingForm = "StationPOS"
    FSettling.fText = "Settle Account - Station"
    FSettling.tAmountDue.Text = Me.bTotal.Text
    FSettling.ShowDialog()
    FSettling.Dispose()

Следующая форма имеет этот код.

Private Sub bSave_Click(sender As Object, e As EventArgs) Handles bSave.Click,
 bCancel.Click
    Dim btn As Bunifu.Framework.UI.BunifuFlatButton = DirectCast(sender,
 Bunifu.Framework.UI.BunifuFlatButton)
    btn.selected = False
    Select Case True
        Case sender Is bSave
            saveSettle()
        Case sender Is bCancel
            Me.Close()
    End Select
End Sub

Я использую vs 2017 недолго, но это первый раз, когда это происходит, иэто очень расстроило меня.

1 Ответ

0 голосов
/ 24 февраля 2019

Вы используете экземпляр по умолчанию типа, который вы не должны в этом случае.Создайте экземпляр формы самостоятельно, отобразите его и затем удалите, что лучше всего сделать с помощью оператора Using:

Using dialogue As New FSettling
    dialogue.ShowDialog()
End Using
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...