Skip to main content
Version: 3.5

Form

Namespace: Wisej.Web

Assembly: Wisej.Framework (3.5.0.0)

Represents a window or dialog box that makes up an application's user interface.

public class Form : ContainerControl, IWisejWindow

Constructors

Instance memberForm()

Default constructor.

Instance memberForm(onClosed)

Initializes a new instance of the Form class with the specified initial settings.

NameTypeDescription
onClosedAction<Object, EventArgs>Handler for the Closed event.

Instance memberForm(controls, onClosed)

Initializes a new instance of the Form class with the specified initial settings.

NameTypeDescription
controlsControl[]An array of Control objects to be added to the form.
onClosedAction<Object, EventArgs>Handler for the Closed event.

Instance memberForm(location, size, controls)

Initializes a new instance of the Form class with the specified initial settings.

NameTypeDescription
locationPointThe location of the form on the screen.
sizeSizeThe size of the form.
controlsControl[]An array of Control objects to be added to the form.

Instance memberForm(location, size, onClosed)

Initializes a new instance of the Form class with the specified initial settings.

NameTypeDescription
locationPointThe location of the form on the screen.
sizeSizeThe size of the form.
onClosedAction<Object, EventArgs>Handler for the Closed event.

Instance memberForm(location, size, controls, onClosed)

Initializes a new instance of the Form class with the specified initial settings.

NameTypeDescription
locationPointThe location of the form on the screen.
sizeSizeThe size of the form.
controlsControl[]An array of Control objects to be added to the form.
onClosedAction<Object, EventArgs>Handler for the Closed event.

Properties

Instance memberAcceptButton

IButtonControl: Returns or sets the button on the form that is clicked when the user presses the ENTER key. (Default: null)

Assigning the AcceptButton doesn't automatically close the window when the button is pressed. It only assigns the value of the DialogResult property of the form to the value of the DialogResult property of the button. To close the form when the AcceptButton is clicked, you have to call the Close method when the button is pushed.

Instance memberActive

Boolean: Returns whether the form is the currently active top level window or the active mdi child window.

Static memberActiveForm

Form: Returns the currently active form for this application.

Instance memberActiveMdiChild

Form: Returns the currently active multiple-document interface (MDI) child window.

Instance memberAllowTransparency

Boolean: Returns or sets whether the opacity of the form can be adjusted.

Instance memberAppearanceKey

String: Sets the appearance key for the theme engine. (Default: null)

Instance memberAutoClose

Boolean: Automatically closes the form or dialog when the user clicks anywhere on the browser outside of the form. (Default: False)

Instance memberAutoCloseModalDialog

Boolean: EXPERIMENTAL: Automatically closes the Modal dialog when DialogResult is assigned to a value different than None by code or by a user action, i.e.: AcceptButton click. Since 3.5.6 (Default: False)

You can change the default value across the application using the AutoCloseModalDialogDefault property or related AppContext switch. The default WinForms behavior is to automatically close the modal dialog.

Static memberAutoCloseModalDialogDefault

Boolean: EXPERIMENTAL: Default value for the AutoCloseModalDialog property. Since 3.5.6 (Default: False)

The default is false. You can set the value by code or using AppContext switches: AppContext.SetSwitch("FormAutoCloseModalDialog", true);

Instance memberAutoSize

Boolean: Returns or sets a value that indicates whether the control resizes based on its contents. (Default: False)

Instance memberAutoSizeMode

AutoSizeMode: Indicates the automatic sizing behavior of the control. (Default: GrowOnly)

Instance memberAutoValidate

AutoValidate: Returns or sets how the control performs validation when the user changes focus to another control.

Instance memberCancelButton

IButtonControl: Returns or sets the button control that is clicked when the user presses the ESC key. (Default: null)

Assigning the CancelButton doesn't automatically close the window when the button is pressed. It only assigns the value of the DialogResult property of the form to the value of the DialogResult property of the button. To close the form when the CancelButton is clicked, you have to call the Close method when the button is pushed.

Instance memberClientSize

Size: Returns or sets the size of the client area of the form.

Instance memberCloseBox

Boolean: Returns or sets whether the Close button is displayed in the caption bar of the form. (Default: True)

Instance memberCloseReason

CloseReason: Returns the reason for the form closing.

Instance memberControlBox

Boolean: Returns or sets whether a control box is displayed in the caption bar of the form. (Default: True)

Instance memberDialogResult

DialogResult: Returns or sets the dialog result for the form.

Instance memberDisableMergedMenu

Boolean: Enables or disables merging the MdiParent's menu with the active MdiChild form's menu. (Default: False)

Instance memberFormBorderStyle

FormBorderStyle: Returns or sets the border style of the form. (Default: Sizable)

Instance memberHasMdiChildren

Boolean: Returns whether this form is an IsMdiContainer and has any Mdi child form.

Instance memberHasOwnedForms

Boolean: Returns whether this form has any owned form.

Instance memberHeaderBackColor

Color: Returns or sets the background color of the title bar and frame of the window.

Instance memberHeaderForeColor

Color: Returns or sets the text color of the title bar of the window.

Instance memberIcon

Image: Returns or sets the icon (32x32) for the Form.

Instance memberIconLarge

Image: Returns or sets the large icon (128x128) for the Form.

Instance memberIconLargeSource

String: Returns or sets the theme name or URL for the large icon to display for the Form.

Instance memberIconSource

String: Returns or sets the theme name or URL for the icon to display for the Form.

Instance memberIsClosed

Boolean: Returns whether the Form has been closed.

Modal dialogs are reusable and are not disposed automatically when closed. Use this property to check whether a modal dialog has been closed, and use IsDisposed to check if it has been disposed.

Instance memberIsDialog

Boolean: Returns whether the Form was created as a modal or modeless dialog using ShowDialog.

Instance memberIsMdiChild

Boolean: Returns a value indicating whether the form is a multiple-document interface (MDI) child form.

Instance memberIsMdiContainer

Boolean: Returns or sets whether the form is a container for multiple-document interface (MDI) child forms. (Default: False)

Instance memberKeepCentered

Boolean: Keeps the form always centered in the browser. (Default: False)

Instance memberKeepOnScreen

Boolean: Keeps the entire form within the browser view preventing the user from dragging the form, even partially, outside of the view. (Default: False)

Instance memberLiveResize

Boolean: Returns or sets whether the form is resized while the border is being dragged. (Default: False)

Instance memberMaximizeBox

Boolean: Returns or sets whether the Maximize button is displayed in the caption bar of the form. (Default: True)

Instance memberMaximumSize

Size: Returns the maximum size the form can be resized to. (Default: {Width=0, Height=0})

Throws:

Instance memberMdiChildren

Form[]: Returns an array of forms that represent the multiple-document interface (MDI) child forms that are parented to this form.

Instance memberMdiClient

MdiClient: Returns the internal MdiClient component.

Instance memberMdiParent

Form: Returns or sets the current multiple-document interface (MDI) parent form of this form.

Throws:

  • Exception The Form assigned to this property is not marked as an MDI container.

Instance memberMdiTabProperties

MdiTabProperties: Provides properties for the TabControl object used to display the tabbed MDI interface.

MainMenu: Returns or sets the MainMenu that is displayed in the form. (Default: null)

Instance memberMergedMenu

MainMenu: Returns the merged menu for the form.

Instance memberMinimizeBox

Boolean: Returns or sets whether the Minimize button is displayed in the caption bar of the form. (Default: True)

Instance memberMinimumSize

Size: Returns or sets the minimum size the form can be resized to.

Throws:

Boolean: Returns whether this form is displayed modally.

Instance memberMovable

Boolean: Returns or sets whether the form can be moved by dragging.

Instance memberOpacity

Double: Returns or sets the opacity level of the form. (Default: 1)

Instance memberOwnedForms

Form[]: Returns an array of Form objects that represent all forms that are owned by this form.

Instance memberOwner

Form: Returns or sets the form that owns this form.

Throws:

  • Exception A top-level window cannot have an owner.

Instance memberShowInTaskbar

Boolean: Returns or sets whether the form is displayed in the Desktop taskbar. (Default: True)

Instance memberShowModalMask

Boolean: Returns or sets a value that shows the modal mask on the client when this form is displayed. (Default: False)

Modal forms - forms opened using ShowDialog - always show the modal mask by default.

Instance memberSize

Size: Returns or sets the size of the form.

Instance memberStartPosition

FormStartPosition: Returns or sets the starting position of the form at run time. (Default: DefaultLocation)

Instance memberText

String: Returns or sets the title of the Form window. (Default: "")

Instance memberTools

ComponentToolCollection: Returns the instance of ComponentToolCollection associated with this control.

Instance memberTopLevel

Boolean: Returns or sets whether to display the form as a top-level window.

Throws:

  • Exception A Multiple-document interface (MDI) parent form must be a top-level window.

Instance memberTopMost

Boolean: Returns or sets whether the form should be displayed as a topmost form. (Default: False)

Instance memberWindowState

FormWindowState: Returns or sets a value that indicates whether form is minimized, maximized, or normal. (Default: Normal)

Methods

Instance memberActivate()

Activates the form and gives it focus.

Instance memberAddOwnedForm(ownedForm)

Adds an owned form to this form.

ParameterTypeDescription
ownedFormFormThe Form that this form will own.

Instance memberClose()

Closes the form.

Instance memberPointToClient(point)

Computes the location of the specified screen point into client coordinates.

ParameterTypeDescription
pointPointThe screen coordinate Point to convert.

Returns: Point. A Point that represents the converted Point, point , in client coordinates.

Instance memberPointToScreen(point)

Computes the location of the specified client point into screen coordinates.

ParameterTypeDescription
pointPointThe client coordinate Point to convert.

Returns: Point. A Point that represents the converted Point, point , in screen coordinates.

Instance memberRefresh(refreshChildren)

Forces the control to update the corresponding client widget. When in DesignMode it forces a full redraw of the designer surface for this control and optionally of its children, including the non-client areas such as the caption of forms or panels.

ParameterTypeDescription
refreshChildrenBooleanTrue to also refresh all the children of this control.

Instance memberRemoveOwnedForm(ownedForm)

Removes an owned form from this form.

ParameterTypeDescription
ownedFormFormA Form representing the form to remove from the list of owned forms for this form.

Instance memberShow(onclose)

Shows the form to the user.

ParameterTypeDescription
onclose optionalAction<Form, DialogResult>Optional async handler for the close event; called when the form/dialog has been closed. It's the equivalent of handling the event.

Forms are disposed immediately when they are closed and cannot be shown again. The optional onclose parameter is an asynchronous callback handler invoked when the form is closed. It is similar to handling the FormClosed event.


form.Show((sender, result) => {

// this code is executed when the form is closed.
// sender is a reference to the form being closed.
// result contains the value of form.DialogResult.
});

Throws:

  • InvalidOperationException The form being shown is already visible; or the form being shown is not a top-level window; or the form being shown as a dialog box is already a modal form.

Instance memberShow(owner, onclose)

Shows the form with the specified owner to the user.

ParameterTypeDescription
ownerFormA Form that is related to this instance. This form is added to the OwnedForms collection of the owner form.
onclose optionalAction<Form, DialogResult>Optional async handler for the close event; called when the form/dialog has been closed. It's the equivalent of handling the event.

Forms are disposed immediately when they are closed and cannot be shown again. The optional onclose parameter is an asynchronous callback handler invoked when the form is closed. It is similar to handling the FormClosed event.


form.Show((sender, result) => {

// this code is executed when the form is closed.
// sender is a reference to the form being closed.
// result contains the value of form.DialogResult.
});

Throws:

  • InvalidOperationException The form being shown is already visible; or The form specified in the owner parameter is the same as the form being shown; or the form being shown is disabled; or the form being shown is not a top-level window; or the form being shown as a dialog box is already a modal form.

Instance memberShowDialog(onclose)

Shows the form as a modal dialog box. When the onclose is specified, the dialog is modal only in the browser.

ParameterTypeDescription
onclose optionalAction<Form, DialogResult>Optional async handler for the close event; called when the form/dialog has been closed. It's the equivalent of handling the event.

Returns: DialogResult. One of the DialogResult values.

When using ShowDialog, the dialog instance is not automatically disposed when the dialog is closed because dialogs are reusable. To make sure that memory is released properly, you must dispose the instance in your code or use the typical using pattern. Dialogs that are closed, but not disposed and not referenced by the application will be disposed by the Garbage Collector when it kicks in.


using (var dialog and new MyDialog())
{
dialog.ShowDialog();
}

Modal dialogs suspend the code execution on the server side effectively replicating the full modal workflow employed by desktop applications. However, when the optional onclose parameter is specified, the dialog is modal only in the browser and doesn't suspend the server thread. Which is similar to the typical asynchronous modal pattern used in javascript.


dialog.ShowDialog((sender, result) => {

// this code is executed when the dialog is closed.
// sender is a reference to the dialog being closed.
// result contains the value of dialog.DialogResult.

// you may dispose it here:
sender.Dispose();
});

// this code is executed immediately, unlike the real modal workflow.

Throws:

  • InvalidOperationException The form being shown is already visible; or the form being shown is disabled; or the form being shown is not a top-level window; or the form being shown as a dialog box is already a modal form.

Instance memberShowDialog(owner, onclose)

Shows the form as a modal dialog box with the specified owner. When the onclose is specified, the dialog is modal only in the browser.

ParameterTypeDescription
ownerFormA Form that is related to this instance. This form is added to the OwnedForms collection of the owner form.
onclose optionalAction<Form, DialogResult>Optional async handler for the close event; called when the form/dialog has been closed. It's the equivalent of handling the event. When the onclose event handler is specified, the modal dialog doesn't suspend the execution on the server but it's still shown as a modal dialog on the client.

Returns: DialogResult. One of the DialogResult values.

When using ShowDialog, the dialog instance is not automatically disposed when the dialog is closed because dialogs are reusable. To make sure that memory is released properly, you must dispose the instance in your code or use the typical using pattern. Dialogs that are closed, but not disposed and not referenced by the application will be disposed by the Garbage Collector when it kicks in.


using (var dialog and new MyDialog())
{
dialog.ShowDialog();
}

Modal dialogs suspend the code execution on the server side effectively replicating the full modal workflow employed by desktop applications. However, when the optional onclose parameter is specified, the dialog is modal only in the browser and doesn't suspend the server thread. Which is similar to the typical asynchronous modal pattern used in javascript.


dialog.ShowDialog((sender, result) => {

// this code is executed when the dialog is closed.
// sender is a reference to the dialog being closed.
// result contains the value of dialog.DialogResult.

// you may dispose it here:
sender.Dispose();
});

// this code is executed immediately, unlike the real modal workflow.

Throws:

  • ArgumentException The form specified in the owner parameter is the same as the form being shown.
  • InvalidOperationException The form being shown is already visible; or The form specified in the owner parameter is the same as the form being shown; or the form being shown is disabled; or the form being shown is not a top-level window; or the form being shown as a dialog box is already a modal form.

Instance memberShowDialogAsync(owner)

Asynchronously shows the form as an awaitable modal dialog box.

ParameterTypeDescription
owner optionalFormAn optional Form that is related to this instance. This form is added to the OwnedForms collection of the owner form.

Returns: Task<DialogResult>. An awaitable Task that contains the DialogResult value returned asynchronous when the user closes the modal dialog.

When using ShowDialog, the dialog instance is not automatically disposed when the dialog is closed because dialogs are reusable. To make sure that memory is released properly, you must dispose the instance in your code or use the typical using pattern. Dialogs that are closed, but not disposed and not referenced by the application will be disposed by the Garbage Collector when it kicks in.


using (var dialog and new MyDialog())
{
var result = await dialog.ShowDialog();
}

Asynchronous Modal dialogs don't suspend the code execution on the server side but can be "awaited" in "async" methods effectively replicating the full modal workflow employed by desktop applications in an asynchronous environment.


private async void button_Click(object sender, EventArgs e)
{
var result = await dialog.ShowDialog();

// this code is executed when the dialog is closed.
// result contains the value of dialog.DialogResult.

// you may dispose the dialog here:
dialog.Dispose();
}

Throws:

  • InvalidOperationException The form being shown is already visible; or the form being shown is disabled; or the form being shown is not a top-level window; or the form being shown as a dialog box is already a modal form.

Events

Instance memberActivated

EventHandler Fired when the form is activated in code or by the user.

Instance memberDeactivate

EventHandler Fired when the form loses focus and is no longer the active form.

Instance memberFormClosed

FormClosedEventHandler Occurs after the form is closed.

Instance memberFormClosing

FormClosingEventHandler Occurs before the form is closed.

Instance memberHelpButtonClicked

EventHandler Fired when the Help button is clicked.

Instance memberLoad

EventHandler Fired before a form is displayed for the first time.

Instance memberMaximumSizeChanged

EventHandler Fired when the value of the MaximumSize property has changed.

Instance memberMdiChildActivate

EventHandler Fired when a multiple-document interface (MDI) child form is activated.

Instance memberMdiChildAdded

ControlEventHandler Fired when a multiple-document interface (MDI) child form is added to the mdi parent.

Instance memberMdiChildRemoved

ControlEventHandler Fired when a multiple-document interface (MDI) child form is removed from the mdi parent.

Instance memberMinimumSizeChanged

EventHandler Fired when the value of the MinimumSize property has changed.

Instance memberShown

EventHandler Fired whenever the form is first displayed.

Instance memberToolClick

ToolClickEventHandler Fired when a ComponentTool is clicked.

Instance memberWindowStateChanged

EventHandler Fired when the value of the WindowStateChanged property has changed.

Inherited By

NameDescription
FileDialogUIUI implementation for the FileDialog class.
FolderBrowserDialogUIUI implementation for the FolderDialog class.

Implements

NameDescription
IBindableComponentBindable components implement this interface.
IContainerControlProvides the functionality for a control to act as a parent for other controls.
IDropTargetControls that support drag & drop operations implement this interface.
IWisejComponentAll wisej components implement this interface.
IWisejControlAll wisej controls derived from the Control class must implement this interface.
IWisejWindowAll wisej top-level windows implement this interface.
IWisejSerializableAllows an object to serialize itself.