Procedura: modificare controlli compositiHow to: Author Composite Controls

I controlli compositi possono essere usati in molti modi.Composite controls can be employed in many ways. È possibile crearli come parte di un progetto applicazione desktop di Windows e usarli solo sui form del progetto.You can author them as part of a Windows desktop application project, and use them only on forms in the project. Oppure è possibile crearli in un progetto libreria di controlli Windows, compilare il progetto in un assembly e usare i controlli in altri progetti.Or you can author them in a Windows Control Library project, compile the project into an assembly, and use the controls in other projects. È anche possibile ereditare da essi e usare l'ereditarietà visiva per personalizzarli rapidamente per scopi speciali.You can even inherit from them, and use visual inheritance to customize them quickly for special purposes.

Nota

Per creare un controllo composito da usare nei Web Form, vedere Sviluppo di controlli server ASP.NET personalizzati.If you want to author a composite control to use on Web Forms, see Developing Custom ASP.NET Server Controls.

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.

Per creare un controllo compositoTo author a composite control

  1. Aprire un nuovo progetto Applicazione Windows chiamato DemoControlHost.Open a new Windows Application project called DemoControlHost.

  2. Nel menu Progetto fare clic su Aggiungi controllo utente.On the Projectmenu, click Add User Control.

  3. Nella finestra di dialogo Aggiungi nuovo elemento assegnare al file di classe (file con estensione .vb o .cs) il nome che si desidera assegnare al controllo composito.In the Add New Item dialog box, give the class file (.vb or .cs file) the name you want the composite control to have.

  4. Fare clic sul pulsante Aggiungi per creare il file di classe per il controllo composito.Click the Add button to create the class file for the composite control.

  5. Aggiungere controlli dalla Casella degli strumenti alla superficie del controllo composito.Add controls from the Toolbox to the composite control surface.

  6. Inserire codice nella routine evento per gestire gli eventi generati dal controllo composito o dai relativi controlli costitutivi.Place code in event procedures, to handle events raised by the composite control or by its constituent controls.

  7. Chiudere la finestra di progettazione per il controllo composito e salvare il file quando viene richiesto.Close the designer for the composite control, and save the file when you are prompted.

  8. Scegliere Compila soluzione dal menu Compila.On the Build menu, click Build Solution.

    Il progetto deve essere compilato affinché i controlli personalizzati siano visualizzati nella Casella degli strumenti.The project must be built in order for custom controls to appear in the Toolbox.

  9. Usare la scheda DemoControlHost della Casella degli strumenti per aggiungere istanze del controllo a Form1.Use the DemoControlHost tab of the Toolbox to add instances of your control to Form1.

Per creare una libreria di classi del controlloTo author a control class library

  1. Aprire un nuovo progetto Libreria di controlli Windows.Open a new Windows Control Library project.

    Per impostazione predefinita, il progetto contiene un controllo composito.By default, the project contains a composite control.

  2. Aggiungere controlli e codice, come descritto nella procedura precedente.Add controls and code as described in the procedure above.

  3. Scegliere un controllo che non si desidera venga modificato dalle classi che ereditano e impostare la proprietà Modifiers del controllo su Private.Choose a control you do not want inheriting classes to change, and set the Modifiers property of this control to Private.

  4. Compilare la DLL.Build the DLL.

Per ereditare da un controllo composito in una libreria di classi del controlloTo inherit from a composite control in a control class library

  1. Nel menu File puntare su Aggiungi e selezionare Nuovo progetto per aggiungere un nuovo progetto Windows Application alla soluzione.On the File menu, point to Add and select New Project to add a new Windows Application project to the solution.

  2. In Esplora soluzioni fare clic con il pulsante destro del mouse sulla cartella Riferimenti del nuovo progetto e scegliere Aggiungi riferimento per aprire la finestra di dialogo Aggiungi riferimento.In Solution Explorer, right-click the References folder for the new project and choose Add Reference to open the Add Reference dialog box.

  3. Selezionare la scheda Progetti e fare doppio clic sul progetto libreria di controlli.Select the Projects tab and double-click your control library project.

  4. Scegliere Compila soluzione dal menu Compila.On the Build menu, click Build Solution.

  5. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto libreria di controlli e selezionare Aggiungi nuovo elemento nel menu di scelta rapida.In Solution Explorer, right-click your control library project and select Add New Item from the shortcut menu.

  6. Selezionare il modello Controllo utente ereditato dalla finestra di dialogo Aggiungi nuovo elemento.Select the Inherited User Control template from the Add New Item dialog box.

  7. Nella finestra di dialogo Selezione ereditarietà fare doppio clic sul controllo da cui si desidera ereditare.In the Inheritance Picker dialog box, double-click the control you want to inherit from.

    Un nuovo controllo viene aggiunto al progetto.A new control is added to your project.

  8. Aprire la finestra di progettazione visiva per il nuovo controllo e aggiungere altri controlli costitutivi.Open the visual designer for the new control and add additional constituent controls.

    È possibile visualizzare i controlli costitutivi ereditati dal controllo composito nella DLL ed è possibile modificare le proprietà dei controlli la cui proprietà Modifiers è Public.You can see the constituent controls that were inherited from the composite control in your DLL, and you can alter the properties of controls whose Modifiers property is Public. Non è possibile modificare le proprietà del controllo la cui proprietà Modifiers è Private.You cannot change the properties of the control whose Modifiers property is Private.

Vedere ancheSee Also

Procedura dettagliata: Modifica di un controllo composito con Visual BasicWalkthrough: Authoring a Composite Control with Visual Basic
Procedura dettagliata: modifica di un controllo composito con Visual C#Walkthrough: Authoring a Composite Control with Visual C#
Procedura dettagliata: Eredità da un controllo Windows Form con Visual BasicWalkthrough: Inheriting from a Windows Forms Control with Visual Basic
Procedura dettagliata: eredità da un controllo di Windows Forms con Visual C#Walkthrough: Inheriting from a Windows Forms Control with Visual C#
Consigli sui tipi di controlliControl Type Recommendations
Procedura: Creare controlli per Windows FormHow to: Author Controls for Windows Forms
Tipi di controlli personalizzatiVarieties of Custom Controls