Sdílet prostřednictvím


Postupy: Povolení vizuálních stylů v hybridní aplikaci

Toto téma ukazuje, jak povolit vizuální styly v ovládacím prvku Windows Forms hostované v aplikaci založené na WPF.

Pokud vaše aplikace volá metodu EnableVisualStyles, většina ovládacích prvků Windows Forms bude automaticky používat vizuální styly. Další informace naleznete v tématu Vykreslování ovládacích prvků pomocí vizuálních stylů.

Úplný výpis kódu úkolů ilustrovaných v tomto tématu najdete v tématu Povolení vizuálních stylů v ukázce hybridní aplikace.

Povolení vizuálních stylů Windows Forms

Povolení vizuálních stylů Windows Forms

  1. Vytvořte projekt aplikace WPF s názvem HostingWfWithVisualStyles.

  2. V Průzkumníku řešení přidejte odkazy na následující sestavení.

    • WindowsFormsIntegration

    • System.Windows.Forms

  3. Na panelu nástrojů poklikejte na ikonu Grid a umístěte na návrhovou plochu prvek Grid.

  4. V okně Vlastnosti nastavte hodnoty vlastností Height a Width na Automatické.

  5. V návrhovém zobrazení nebo v zobrazení XAML vyberte Window.

  6. V okně Vlastnosti klikněte na kartu Události.

  7. Poklikejte na událost Loaded.

  8. Do MainWindow.xaml.vb nebo MainWindow.xaml.cs vložte následující kód pro zpracování události 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. Stisknutím klávesy F5 sestavte a spusťte aplikaci.

    Ovládací prvek Windows Forms je malován vizuálními styly.

Zakázání vizuálních stylů Windows Forms

Pokud chcete zakázat vizuální styly, jednoduše odeberte volání metody EnableVisualStyles.

Zakázání vizuálních stylů Windows Forms

  1. Otevřete MainWindow.xaml.vb nebo MainWindow.xaml.cs v Editoru kódu.

  2. Zakomentujte volání metody EnableVisualStyles.

  3. Stisknutím klávesy F5 sestavte a spusťte aplikaci.

    Ovládací prvek Windows Forms je vykreslený výchozím stylem systému.

Viz také