From the main Form I show a little registration window (frmRegister):
Code:
Private Sub RegisterToolStripMenuItem_Click(sender ....) Handles RegisterToolStripMenuItem.Click
Dim retVal As DialogResult = frmRegister.ShowDialog()
Debug.Print("retVal after frmRegister.ShowDialog: " & retVal.ToString)
If retVal = DialogResult.Cancel Then
Me.Close()
End If
End Sub
retVal has to change depending from the btnClose.Text of the frmRegister:
Code:
Private Sub btnClose_Click(ByVal sender ...) Handles btnClose.Click
If btnClose.Text <> My.Resources.Strings.Close Then
Me.DialogResult = DialogResult.Cancel
Else
Me.DialogResult = DialogResult.None
End If
Debug.Print("Me.DialogResult before Me.Close code: " & Me.DialogResult.ToString)
Me.Close()
Debug.Print("Me.DialogResult after Me.Close code: " & Me.DialogResult.ToString)
End Sub
DialogResult ALWAYS RETURNS CANCEL, even if btnClose.Text = My.Resources.Strings.Close
The Debug.Print results:
Me.DialogResult on FrmRegister.Load: None
Me.DialogResult
before Me.Close code: None
Me.DialogResult
after Me.Close code: Cancel
retVal after frmRegister.ShowDialog: Cancel
Why Me.Close changes the DialogResult?
NOTE: all the Buttons of the form are set to DialogResult NONE
Lol, resolved from myself:
------
DialogResult.None IS NOT a DialogResult, so Me.Close generates a DialogResult.Cancel.
Sobstituted DialogResult.None with DialogResult.OK and all is ok. SORRY mates.