Form.ShowAsync(IWin32Window) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Displays the form asynchronously, by setting its Visible property to true
.
[System.Diagnostics.CodeAnalysis.Experimental("WFO5002", UrlFormat="https://aka.ms/winforms-warnings/{0}")]
public System.Threading.Tasks.Task ShowAsync (System.Windows.Forms.IWin32Window? owner = default);
[<System.Diagnostics.CodeAnalysis.Experimental("WFO5002", UrlFormat="https://aka.ms/winforms-warnings/{0}")>]
member this.ShowAsync : System.Windows.Forms.IWin32Window -> System.Threading.Tasks.Task
Public Function ShowAsync (Optional owner As IWin32Window = Nothing) As Task
Parameters
- owner
- IWin32Window
The optional owner window that implements IWin32Window.
Returns
A Task that completes when the form is closed or disposed.
- Attributes
Exceptions
The form is already visible.
-or-
The form is disabled.
-or-
The form is not a top-level form.
-or-
The form is trying to set itself as its own owner.
-or-
The form is already displayed asynchronously.
-or-
No WindowsFormsSynchronizationContext could be retrieved or installed.
-or-
The operating system is in a non-interactive mode.
The owner window is trying to set itself as its own owner.
Remarks
This method makes the form visible by setting the Visible property to true
.
This method immediately returns, even if the form is large and takes a long time to be set up.
The task will complete when the form is closed or disposed.
If the owner window is provided, it ensures that the owner is topmost and sets the owner for the form.
This method also performs several checks to prevent invalid operations, such as trying to display a disabled form, attempting to display the form when it is not a top-level window, or setting the form as its own owner.
If the operating system is in a non-interactive mode, this method will throw an InvalidOperationException.
If the form is already displayed asynchronously, an InvalidOperationException will be thrown.
An InvalidOperationException will also occur if no WindowsFormsSynchronizationContext could be retrieved or installed.
There is no need to marshal the call to the UI thread manually if the call originates from a different thread than the UI-Thread. This is handled automatically.