Share via


Guide pratique pour activer des styles visuels dans une application hybride

Cette rubrique montre comment activer les styles visuels sur un contrôle Windows Forms hébergé dans une application WPF.

Si votre application appelle la EnableVisualStyles méthode, la plupart de vos contrôles Windows Forms utilisent automatiquement des styles visuels. Pour plus d’informations, consultez Rendu des contrôles avec les styles visuels.

Pour obtenir l’intégralité du code des tâches illustrées dans cette rubrique, consultez Activation des styles visuels dans un exemple d’application hybride.

Activation de styles visuels Windows Forms

Pour activer les styles visuels Windows Forms

  1. Créez un projet d’application WPF nommé HostingWfWithVisualStyles.

  2. Dans l’Explorateur de solutions, ajoutez des références aux assemblys suivants.

    • WindowsFormsIntegration

    • System.Windows.Forms

  3. Dans la boîte à outils, double-cliquez sur l’icône Grid pour placer un Grid élément sur l’aire de conception.

  4. Dans le Fenêtre Propriétés, définissez les valeurs des propriétés et Width des Height valeurs sur Auto.

  5. En mode Création ou en mode XAML, sélectionnez le Window.

  6. Dans la fenêtre Propriétés, cliquez sur l’onglet Événements.

  7. Double-cliquez sur l’événement Loaded .

  8. Dans MainWindow.xaml.vb ou MainWindow.xaml.cs, insérez le code suivant pour gérer l’événement Loaded .

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        // Comment out the following line to disable visual
        // styles for the hosted Windows Forms control.
        System.Windows.Forms.Application.EnableVisualStyles();
    
        // Create a WindowsFormsHost element to host
        // the Windows Forms control.
        System.Windows.Forms.Integration.WindowsFormsHost host =
            new System.Windows.Forms.Integration.WindowsFormsHost();
    
        // Create a Windows Forms tab control.
        System.Windows.Forms.TabControl tc = new System.Windows.Forms.TabControl();
        tc.TabPages.Add("Tab1");
        tc.TabPages.Add("Tab2");
    
        // Assign the Windows Forms tab control as the hosted control.
        host.Child = tc;
    
        // Assign the host element to the parent Grid element.
        this.grid1.Children.Add(host);
    }
    
    Private Sub Window_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Comment out the following line to disable visual
        ' styles for the hosted Windows Forms control.
        System.Windows.Forms.Application.EnableVisualStyles()
    
        ' Create a WindowsFormsHost element to host
        ' the Windows Forms control.
        Dim host As New System.Windows.Forms.Integration.WindowsFormsHost()
    
        ' Create a Windows Forms tab control.
        Dim tc As New System.Windows.Forms.TabControl()
        tc.TabPages.Add("Tab1")
        tc.TabPages.Add("Tab2")
    
        ' Assign the Windows Forms tab control as the hosted control.
        host.Child = tc
    
        ' Assign the host element to the parent Grid element.
        Me.grid1.Children.Add(host)
    
    End Sub
    
  9. Appuyez sur F5 pour générer et exécuter l’application.

    Le contrôle Windows Forms est peint avec des styles visuels.

Désactivation de styles visuels Windows Forms

Pour désactiver les styles visuels, supprimez simplement l’appel à la EnableVisualStyles méthode.

Pour désactiver les styles visuels Windows Forms

  1. Ouvrez MainWindow.xaml.vb ou MainWindow.xaml.cs dans l’éditeur de code.

  2. Commentez l’appel à la EnableVisualStyles méthode.

  3. Appuyez sur F5 pour générer et exécuter l’application.

    Le contrôle Windows Forms est peint avec le style système par défaut.

Voir aussi