Partager via


Application.MainWindow Propriété

Définition

Obtient ou définit la fenêtre principale de l’application.

public:
 property System::Windows::Window ^ MainWindow { System::Windows::Window ^ get(); void set(System::Windows::Window ^ value); };
public System.Windows.Window MainWindow { get; set; }
member this.MainWindow : System.Windows.Window with get, set
Public Property MainWindow As Window

Valeur de propriété

Qui Window est désigné comme fenêtre d’application principale.

Exceptions

MainWindow est défini à partir d’une application hébergée dans un navigateur, telle qu’une application de navigateur XAML (XBAPs).

Exemples

L’exemple suivant montre comment rechercher la fenêtre principale de l’application.

// Get the main window
Window mainWindow = this.MainWindow;
' Get the main window
Dim mainWindow As Window = Me.MainWindow

L’exemple suivant montre comment définir MainWindow à l’aide de XAML.

<Application 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="StartupWindow.xaml"
    >
  <Application.MainWindow>
    <NavigationWindow Source="MainPage.xaml" Visibility="Visible"></NavigationWindow>
  </Application.MainWindow>
</Application>

L’exemple suivant montre comment instancier le code au démarrage de l’application MainWindow .

public partial class App : Application
{
    void App_Startup(object sender, StartupEventArgs e)
    {
        MainWindow window = new MainWindow();
        window.Show();
    }
}
Partial Public Class App
    Inherits Application
    Private Sub App_Startup(ByVal sender As Object, ByVal e As StartupEventArgs)
        Dim window As New MainWindow()
        window.Show()
    End Sub
End Class

Remarques

MainWindow est automatiquement défini avec une référence au premier Window objet à instancier dans le AppDomain.

Vous pouvez spécifier une autre fenêtre principale en définissant MainWindow l’affectation d’un autre Windows objet à la MainWindow propriété.

Si la ShutdownMode propriété de l’objet est définie OnMainWindowClosesur , la fermeture de la Application fenêtre principale entraîne l’arrêt de l’application.

Il est possible de définir la MainWindow propriété à partir de XAML, si la fenêtre principale d’une application n’est pas la fenêtre produite en définissant la StartupUri propriété en XAML. Les deux limitations de l’approche XAML sont les suivantes :

  • Vous pouvez spécifier un xaml uniquement Window ou un xaml uniquement NavigationWindow comme fenêtre principale.

  • Vous devez définir la Visibility propriété de la fenêtre que vous spécifiez, sinon elle ne s’affiche pas.

La référence au premier Window objet à instancier est également ajoutée en tant que premier élément à la Windows collection. Si MainWindow elle est ensuite définie avec une référence à une autre Window, la position de l’élément avec la référence à la fenêtre principale change, tandis que l’ordre des éléments reste Windows le même. Par conséquent, utilisez MainWindow toujours pour faire référence à la fenêtre principale au lieu du premier élément dans Windows.

Note

Si la fenêtre principale est un , et que vous avez besoin d’un NavigationWindowaccès spécifique aux NavigationWindow membres, vous devez convertir la valeur sur MainWindowNavigationWindow.

Cette propriété est disponible uniquement à partir du thread qui a créé l’objet Application .

S’applique à

Voir aussi