Additionally, Application exposes special support for managing all of the windows in an application:

Application maintains a list of all the windows that are currently instantiated in the application. This list is exposed by the Windows property.

By default, MainWindow is automatically set with a reference to the first Window that is instantiated in an application. This thereby making the window the main application window.

A Window can be implemented using markup, markup and code-behind, or code.

Window is primarily used to display windows and dialog boxes for standalone applications. However, for applications that require navigation at the window level, such as wizards, you can use NavigationWindow instead; NavigationWindow derives from Window and extends it with browser-style navigation support.

Note:

Islands of navigable content can be incorporated into other content and content containers using Frame.

Window needs UnmanagedCode security permission to be instantiated. This has the following consequences:

ClickOnce-deployed standalone applications will request permission elevation when launched from either the Internet or Local Intranet zones.

XBAPs that request anything less than full permissions will not be able to instantiate windows or dialog boxes.

Content Model: Window is a ContentControl, which means that Window can contain content such as text, images, or panels. Also, Window is a root element and, consequently, cannot be part of another element's content. For more information about the content model for Window, see Content Models.

Dependency properties for this control might be set by the control’s default style. If a property is set by a default style, the property might change from its default value when the control appears in the application. The default style is determined by which desktop theme is used when the application is running. For more information, see Themes.