Partager via


Guide pratique pour activer les 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 méthode EnableVisualStyles, la plupart de vos contrôles Windows Forms utilisent automatiquement des styles visuels. Pour plus d’informations, consultez Les contrôles de rendu avec des styles visuels.

Pour obtenir une liste complète des tâches illustrées dans cette rubrique, consultez Activation des styles visuels dans un exemple d’application hybride.

Activation des styles visuels Windows Forms

Pour activer les styles visuels de 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 élément Grid sur la surface de conception.

  4. Dans la fenêtre Propriétés, définissez les valeurs des propriétés Height et Width sur automatique.

  5. En mode Création ou en mode XAML, sélectionnez l'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 rendu avec des styles visuels.

Désactivation des styles visuels Windows Forms

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

Pour désactiver les styles visuels Windows Forms

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

  2. Mettez en commentaire l'appel à la méthode EnableVisualStyles.

  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