Exemplarische Vorgehensweise: Hosten eines Windows Forms-Steuerelements in WPFWalkthrough: Hosting a Windows Forms Control in WPF

WPFWPF stellt viele Steuerelemente mit einem großen Funktionsumfang bereit.provides many controls with a rich feature set. Allerdings unter Umständen möchten Sie verwenden Windows FormsWindows Forms steuert, die auf Ihre WPFWPF Seiten.However, you may sometimes want to use Windows FormsWindows Forms controls on your WPFWPF pages. Angenommen, Sie müssen möglicherweise eine erhebliche Investition in vorhandenen Windows FormsWindows Forms Steuerelemente, oder Sie haben möglicherweise eine Windows FormsWindows Forms -Steuerelement, das einzigartige Funktionen bereitstellt.For example, you may have a substantial investment in existing Windows FormsWindows Forms controls, or you may have a Windows FormsWindows Forms control that provides unique functionality.

In dieser exemplarischen Vorgehensweise erfahren Sie, wie zum Hosten einer Windows FormsWindows Forms System.Windows.Forms.MaskedTextBox control für eine WPFWPF Seite mithilfe von Code.This walkthrough shows you how to host a Windows FormsWindows Forms System.Windows.Forms.MaskedTextBox control on a WPFWPF page by using code.

Eine vollständige codeauflistung der Aufgaben in dieser exemplarischen Vorgehensweise veranschaulicht, finden Sie unter Hosten eines Windows Forms-Steuerelements in WPF-Beispiel.For a complete code listing of the tasks shown in this walkthrough, see Hosting a Windows Forms Control in WPF Sample.

VorraussetzungenPrerequisites

Für diese exemplarische Vorgehensweise benötigen Sie Visual Studio.You need Visual Studio to complete this walkthrough.

Hosten des Windows Forms-SteuerelementsHosting the Windows Forms Control

So hosten Sie das MaskedTextBox-SteuerelementTo host the MaskedTextBox control

  1. Erstellen einer WPF-Anwendungsprojekt mit dem Namen HostingWfInWpf.Create a WPF Application project named HostingWfInWpf.

  2. Fügen Sie Verweise auf die folgenden Assemblys hinzu.Add references to the following assemblies.

    • WindowsFormsIntegrationWindowsFormsIntegration

    • System.Windows.FormsSystem.Windows.Forms

  3. Öffnen Sie "MainWindow.xaml" in der WPF-DesignerWPF Designer.Open MainWindow.xaml in the WPF-DesignerWPF Designer.

  4. Name der Grid Element grid1.Name the Grid element grid1.

    <Grid Name="grid1">
        
    </Grid>
    
  5. Wählen Sie in der Entwurfsansicht oder XAML-Ansicht der Window Element.In Design view or XAML view, select the Window element.

  6. Klicken Sie im Eigenschaftenfenster auf die Ereignisse Registerkarte.In the Properties window, click the Events tab.

  7. Doppelklicken Sie auf die Loaded Ereignis.Double-click the Loaded event.

  8. Fügen Sie den folgenden Code zum Behandeln der Loaded Ereignis.Insert the following code to handle the Loaded event.

    private void Window_Loaded(object sender, RoutedEventArgs e) 
    {
        // Create the interop host control.
        System.Windows.Forms.Integration.WindowsFormsHost host =
            new System.Windows.Forms.Integration.WindowsFormsHost();
    
        // Create the MaskedTextBox control.
        MaskedTextBox mtbDate = new MaskedTextBox("00/00/0000");
    
        // Assign the MaskedTextBox control as the host control's child.
        host.Child = mtbDate;
    
        // Add the interop host control to the Grid
        // control's collection of child controls.
        this.grid1.Children.Add(host);
    }
    
    Private Sub Window_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Create the interop host control.
        Dim host As New System.Windows.Forms.Integration.WindowsFormsHost()
    
        ' Create the MaskedTextBox control.
        Dim mtbDate As New MaskedTextBox("00/00/0000")
    
        ' Assign the MaskedTextBox control as the host control's child.
        host.Child = mtbDate
    
        ' Add the interop host control to the Grid
        ' control's collection of child controls.
        Me.grid1.Children.Add(host)
    
    End Sub
    
  9. Fügen Sie am Anfang der Datei, die folgenden Imports oder using Anweisung.At the top of the file, add the following Imports or using statement.

    using System.Windows.Forms;
    
    Imports System.Windows.Forms
    
  10. Drücken Sie F5, um die Anwendung zu erstellen und auszuführen.Press F5 to build and run the application.

Siehe auchSee also