Návod: Hostování ovládacího prvku Windows Forms ve WPF
WPF poskytuje mnoho ovládacích prvků s bohatou sadou funkcí. Někdy ale můžete chtít používat ovládací prvky Windows Forms na stránkách WPF. Můžete mít například značné investice do stávajících ovládacích prvků Windows Forms nebo máte ovládací prvek Windows Forms, který poskytuje jedinečné funkce.
Tento návod ukazuje, jak hostovat ovládací prvek Windows Forms System.Windows.Forms.MaskedTextBox na stránce WPF pomocí kódu.
Úplný výpis kódu úloh zobrazených v tomto návodu najdete v tématu Hostování ovládacího prvku Windows Forms v ukázceWPF.
Požadavky
K dokončení tohoto návodu potřebujete Visual Studio.
Hostování ovládacího prvku Windows Forms
Hostování ovládacího prvku MaskedTextBox
Vytvořte projekt aplikace WPF s názvem
HostingWfInWpf
.Přidejte odkazy na následující sestavení.
WindowsFormsIntegration
System.Windows.Forms
Otevřete MainWindow.xaml v Návrháři WPF.
Pojmenujte prvek Grid
grid1
.<Grid Name="grid1"> </Grid>
V návrhovém zobrazení nebo v zobrazení XAML vyberte prvek Window.
V okně Vlastnosti klikněte na kartu Události.
Poklepejte na událost Loaded.
Vložte následující kód pro zpracování události 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
V horní části souboru přidejte následující
Imports
nebousing
příkaz.using System.Windows.Forms;
Imports System.Windows.Forms
Stisknutím klávesy F5 sestavte a spusťte aplikaci.
Viz také
- ElementHost
- WindowsFormsHost
- Návrhování XAML v sadě Visual Studio
- Návod: Hostování ovládacího prvku Windows Forms ve WPF pomocí XAML
- Návod: Hostování složeného ovládacího prvku Windows Forms ve WPF
- Návod: Hostování složeného ovládacího prvku WPF ve Windows Forms
- Ovládací prvky Windows Forms a ekvivalentní ovládací prvky WPF
- Hostování ovládacího prvku Windows Forms v ukázce WPF
.NET Desktop feedback