Skip to content

Require to update Remark info for Form.ShowDialog method #9646

@gewarren

Description

@gewarren

Issue moved from MicrosoftDocs/feedback#3988


From @Eudora-Li01 on Wednesday, January 31, 2024 6:40:01 AM

Is your feature request related to a problem? Please describe.
https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.form.showdialog?view=windowsdesktop-8.0#system-windows-forms-form-showdialog(system-windows-forms-iwin32window)
This doc clarifies that when a form is displayed as a modal dialog box, clicking the Close button (the button with an X at the upper-right corner of the form) causes the form to be hidden and the DialogResult property to be set to DialogResult.Cancel. Unlike modeless forms, the Close method is not called by the .NET Framework when the user clicks the close form button of a dialog box or sets the value of the DialogResult property. Instead the form is hidden and can be shown again without creating a new instance of the dialog box.

But actually, you can see from the attached WinForms project (C#, .NET 8.0), that this is not the case. Instead, the Form_Load event is fired on every ShowDialog. This means the code in Form_Load runs every time the form is shown though it has already been loaded.

image

Describe the solution you'd like
Please add more info after above statement:
However, Form_Load will trigger AFAIK when for whatever reason the handle got created, recreated or the Form was previously shown as a modal Dialog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Pri3Indicates issues/PRs that are low priorityarea-WinFormsIssues or PRs that relate to WinForms.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions