Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Aktualisiert: August 2010
WPF stellt viele Steuerelemente mit einem umfangreichen Featuresatz bereit. Es kann jedoch vorkommen, dass Sie auf Ihren WPF-Seiten Windows Forms-Steuerelemente verwenden möchten. Beispielsweise könnte eine beträchtliche Investition in Windows Forms-Steuerelementen vorliegen, oder Sie verfügen über ein Windows Forms-Steuerelement, das eine einzigartige Funktionalität zur Verfügung stellt.
In dieser exemplarischen Vorgehensweise wird das Hosten eines Windows Forms System.Windows.Forms.MaskedTextBox-Steuerelements auf einer WPF-Seite mithilfe von Code beschrieben.
Eine vollständige Codeauflistung der Aufgaben, die in dieser exemplarischen Vorgehensweise gezeigt wurden, finden Sie unter Beispiel zum Hosten eines Windows Forms-Steuerelements in WPF.
Vorbereitungsmaßnahmen
Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:
- Visual Studio 2010.
Hosten des Windows Forms-Steuerelements
So hosten Sie das MaskedTextBox-Steuerelement
Erstellen Sie ein WPF-Anwendungsprojekt mit dem Namen HostingWfInWpf.
Fügen Sie Verweise auf die folgenden Assemblys hinzu.
WindowsFormsIntegration
System.Windows.Forms
Öffnen Sie im WPF-Designer die Datei MainWindow.xaml.
Geben Sie für das Grid-Element den Namen grid1 ein.
<Grid Name="grid1"> </Grid>Wählen Sie in der Designansicht oder XAML-Ansicht das Window-Element aus.
Klicken Sie im Eigenschaftenfenster auf die Registerkarte Ereignisse.
Doppelklicken Sie auf das Loaded-Ereignis.
Fügen Sie folgenden Code ein, um das Loaded-Ereignis zu behandeln.
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 Subprivate 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); }Fügen Sie am Anfang der Datei die folgende Imports- oder using-Anweisung hinzu.
Imports System.Windows.Formsusing System.Windows.Forms;Drücken Sie F5, um die Anwendung zu erstellen und auszuführen.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Hosten eines Windows Forms-Steuerelements in WPF mithilfe von XAML
Referenz
Konzepte
Exemplarische Vorgehensweise: Hosten eines zusammengesetzten Windows Forms-Steuerelements in WPF
Exemplarische Vorgehensweise: Hosten eines zusammengesetzten WPF-Steuerelements in Windows Forms
Windows Forms-Steuerelemente und äquivalente WPF-Steuerelemente
Weitere Ressourcen
Beispiel zum Hosten eines Windows Forms-Steuerelements in WPF
Änderungsprotokoll
Datum |
Versionsgeschichte |
Grund |
|---|---|---|
August 2010 |
Aktualisiert für Visual Studio 2010. |
Kundenfeedback. |