Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
WPF fournit de nombreux contrôles avec un ensemble de fonctionnalités riche. Toutefois, vous pouvez parfois utiliser des contrôles Windows Forms sur vos pages WPF. Par exemple, vous pouvez avoir un investissement important dans les contrôles Windows Forms existants, ou vous pouvez avoir un contrôle Windows Forms qui fournit des fonctionnalités uniques.
Cette procédure pas à pas vous montre comment héberger un contrôle windows Forms System.Windows.Forms.MaskedTextBox sur une page WPF à l’aide du code.
Pour obtenir une liste complète des tâches présentées dans cette procédure pas à pas, consultez Hébergement d’un contrôle Windows Forms dans l’exemple WPF.
Conditions préalables
Vous avez besoin de Visual Studio pour effectuer cette procédure pas à pas.
Hébergement d’un contrôle Windows Forms
Pour héberger le contrôle MaskedTextBox
Créez un projet d’application WPF nommé
HostingWfInWpf
.Ajoutez des références aux assemblages suivants.
WindowsFormsIntegration
System.Windows.Forms
Ouvrez MainWindow.xaml dans le concepteur WPF.
Nommez l’élément Grid
grid1
.<Grid Name="grid1"> </Grid>
En mode Création ou en mode XAML, sélectionnez l’élément Window.
Dans la fenêtre Propriétés, cliquez sur l’onglet Événements.
Double-cliquez sur l’événement Loaded.
Insérez le code suivant pour gérer l’événement Loaded.
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
En haut du fichier, ajoutez l’instruction
Imports
ouusing
suivante.using System.Windows.Forms;
Imports System.Windows.Forms
Appuyez sur F5 pour générer et exécuter l’application.
Voir aussi
- ElementHost
- WindowsFormsHost
- Concevoir XAML dans Visual Studio
- Procédure pas à pas : hébergement d’un contrôle Windows Forms dans WPF avec XAML
- Procédure pas à pas : Hébergement d’un contrôle composite Windows Forms dans WPF
- Guide pratique : Hébergement d’un contrôle composite WPF dans Windows Forms
- Contrôles Windows Forms et contrôles WPF équivalents
- Hébergement d’un contrôle Windows Forms dans l’exemple WPF
.NET Desktop feedback