Procedura dettagliata: creazione di nuovo contenuto WPF in Windows Form in fase di progettazioneWalkthrough: Creating New WPF Content on Windows Forms at Design Time

Questo argomento descrive come creare un controllo Windows Presentation Foundation (WPF) da usare nelle applicazioni basate su Windows Form.This topic shows you how to create a Windows Presentation Foundation (WPF) control for use in your Windows Forms-based applications.

Questa procedura dettagliata prevede l'esecuzione delle attività seguenti:In this walkthrough, you perform the following tasks:

  • Creare il progetto.Create the project.

  • Creare un nuovo controllo WPF.Create a new WPF control.

  • Aggiungere il nuovo controllo WPF a un Windows Form.Add the new WPF control to a Windows Form. Il controllo WPF è ospitato in un controllo ElementHost.The WPF control is hosted in an ElementHost control.

Nota

Le finestre di dialogo e i comandi di menu visualizzati potrebbero essere diversi da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione del programma.The dialog boxes and menu commands you see might differ from those described in Help depending on your active settings or edition. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti .To change your settings, choose Import and Export Settings on the Tools menu. Per altre informazioni, vedere Personalizzazione delle impostazioni di sviluppo in Visual Studio.For more information, see Customizing Development Settings in Visual Studio.

PrerequisitiPrerequisites

Per completare la procedura dettagliata, è necessario disporre dei componenti seguenti:You need the following components to complete this walkthrough:

  • Visual Studio 2008Visual Studio 2008..

Creazione del progettoCreating the Project

Il primo passaggio consiste nella creazione del progetto Windows Form.The first step is to create the Windows Forms project.

Nota

Con il contenuto WPF sono supportati solo progetti C# e Visual Basic.When hosting WPF content, only C# and Visual Basic projects are supported.

Per creare il progettoTo create the project

  • Creare un nuovo progetto applicazione Windows Forms in Visual Basic o Visual c# denominato HostingWpf.Create a new Windows Forms Application project in Visual Basic or Visual C# named HostingWpf.

Creazione di un nuovo controllo WPFCreating a New WPF Control

Creare un nuovo controllo WPF e aggiungerlo al progetto è facile come aggiungere qualsiasi altro elemento.Creating a new WPF control and adding it to your project is as easy as adding any other item to your project. Progettazione Windows Form funziona con un particolare tipo di controllo denominato controllo composito, o controllo utente.The Windows Forms Designer works with a particular kind of control named composite control, or user control. Per altre informazioni sui controlli utente WPF, vedere UserControl.For more information about WPF user controls, see UserControl.

Nota

Il tipo System.Windows.Controls.UserControl per WPF è distinto dal tipo di controllo utente fornito da Windows Form, denominato anch'esso System.Windows.Forms.UserControl.The System.Windows.Controls.UserControl type for WPF is distinct from the user control type provided by Windows Forms, which is also named System.Windows.Forms.UserControl.

Per creare un nuovo controllo WPF.To create a new WPF control

  1. In Esplora, aggiungere un nuovo libreria di controlli utente WPF progetto alla soluzione.In Solution Explorer, add a new WPF User Control Library project to the solution. Usare il nome predefinito per la libreria di controlli, WpfControlLibrary1.Use the default name for the control library, WpfControlLibrary1. Il nome predefinito del controllo è UserControl1.xaml.The default control name is UserControl1.xaml.

    L'aggiunta del nuovo controllo ha gli effetti seguenti:Adding the new control has the following effects.

    • Viene aggiunto il file UserControl1.xaml.File UserControl1.xaml is added.

    • Viene aggiunto il file UserControl1.xaml.cs o UserControl1.xaml.vb.Either file UserControl1.xaml.cs or UserControl1.xaml.vb is added. Questo file contiene il code-behind per i gestori eventi e l'altra implementazione.This file contains the code-behind for event handlers and other implementation.

    • Vengono aggiunti riferimenti agli assembly WPF.References to WPF assemblies are added.

    • Il file UserControl1.xaml viene aperto in WPF Designer per Visual StudioWPF Designer for Visual Studio.File UserControl1.xaml opens in the WPF Designer per Visual StudioWPF Designer for Visual Studio.

  2. In visualizzazione Progettazione verificare che UserControl1 sia selezionato.In Design view, make sure that UserControl1 is selected. Per ulteriori informazioni, vedere procedura: selezionare e spostare elementi nella finestra di progettazione.For more information, see How to: Select and Move Elements on the Design Surface.

  3. Nel proprietà finestra, impostare il valore della Width e Height proprietà 200.In the Properties window, set the value of the Width and Height properties to 200.

  4. Dal della casella degli strumenti, trascinare un System.Windows.Controls.TextBox controllo sull'area di progettazione.From the Toolbox, drag a System.Windows.Controls.TextBox control onto the design surface.

  5. Nel proprietà finestra, impostare il valore della Text proprietà contenuto ospitato.In the Properties window, set the value of the Text property to Hosted Content.

    Nota

    In generale, è opportuno ospitare contenuto WPF più sofisticato.In general, you should host more sophisticated WPF content. Il controllo System.Windows.Controls.TextBox è qui usato a solo a titolo esemplificativo.The System.Windows.Controls.TextBox control is used here for illustrative purposes only.

  6. Compilare il progetto.Build the project.

Aggiunta di un controllo WPF a un Windows FormAdding a WPF Control to a Windows Form

Il nuovo controllo WPF è pronto per l'uso sul form.Your new WPF control is ready for use on the form. Windows Forms usa il controllo ElementHost per ospitare contenuto WPFWindows Forms uses the ElementHost control to host WPF content

Per aggiungere un controllo WPF a un Windows FormTo add a WPF control to a Windows Form

  1. Aprire Form1 in Progettazione Windows Form.Open Form1 in the Windows Forms Designer.

  2. Nel della casella degli strumenti, individuare la scheda controlli utente WPF WPFUserControlLibrary.In the Toolbox, find the tab labeled WPFUserControlLibrary WPF User Controls.

  3. Trascinare un'istanza di UserControl1 sul form.Drag an instance of UserControl1 onto the form.

    • Un controllo ElementHost verrà creato automaticamente sul form per ospitare il controllo WPF.An ElementHost control is created automatically on the form to host the WPF control.

    • Il ElementHost controllo è denominato elementHost1 e nel proprietà , è possibile visualizzare il relativo Child è impostata su UserControl1.The ElementHost control is named elementHost1 and in the Properties window, you can see its Child property is set to UserControl1.

    • I riferimenti agli assembly WPF vengono aggiunti al progetto.References to WPF assemblies are added to the project.

    • Il controllo elementHost1 include un pannello smart tag che mostra le opzioni di hosting disponibili.The elementHost1 control has a smart tag panel that shows the available hosting options.

  4. Nel ElementHost Tasks pannello smart tag, seleziona ancora nel contenitore padre.In the ElementHost Tasks smart tag panel, select Dock in parent container.

  5. Premere F5 per compilare ed eseguire l'applicazione.Press F5 to build and run the application.

Passaggi successiviNext Steps

Windows Form e WPF sono tecnologie diverse progettate per interagire strettamente.Windows Forms and WPF are different technologies, but they are designed to interoperate closely. Per migliorare l'aspetto e il comportamento nelle applicazioni, provare le operazioni seguenti.To provide richer appearance and behavior in your applications, try the following.

Vedere ancheSee Also

ElementHost
WindowsFormsHost
Migrazione e interoperabilitàMigration and Interoperability
Uso di controlli WPFUsing WPF Controls
WPF DesignerWPF Designer