Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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.
Dvakrát klikněte 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 SubV horní části souboru přidejte následující
Importsnebousingpříkaz.using System.Windows.Forms;Imports System.Windows.FormsStisknutím klávesy F5 sestavte a spusťte aplikaci.
Viz také
- ElementHost
- WindowsFormsHost
- Návrh XAML (Visual Studio)
- Návod: Hostování ovládacího prvku Windows Forms ve WPF pomocí XAML
- Návod: Jak hostovat složený ovládací prvek Windows Forms v aplikaci WPF
- Návod: Hostování složeného ovládacího prvku WPF ve Windows Forms
- Ovládací prvky Windows Forms a jejich ekvivalentní ovládací prvky WPF
- Hostování ovládacího prvku Windows Forms v ukázce WPF
.NET Desktop feedback