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
Créez un projet d’application WPF nommé
HostingWfWithVisualStyles
.Dans l’Explorateur de solutions, ajoutez des références aux assemblys suivants.
WindowsFormsIntegration
System.Windows.Forms
Dans la boîte à outils, double-cliquez sur l'icône Grid pour placer un élément Grid sur la surface de conception.
Dans la fenêtre Propriétés, définissez les valeurs des propriétés Height et Width sur automatique.
En mode Création ou en mode XAML, sélectionnez l'Window.
Dans la fenêtre Propriétés, cliquez sur l’onglet Événements.
Double-cliquez sur l’événement Loaded.
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
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
Ouvrez MainWindow.xaml.vb ou MainWindow.xaml.cs dans l’éditeur de code.
Mettez en commentaire l'appel à la méthode EnableVisualStyles.
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
- EnableVisualStyles
- System.Windows.Forms.VisualStyles
- WindowsFormsHost
- Contrôles de rendu avec des styles visuels
- Procédure pas à pas : intégration d’un contrôle Windows Forms dans WPF
.NET Desktop feedback