Condividi tramite


Procedura: ereditare form mediante la finestra di dialogo Selezione ereditarietà

Il modo più semplice di ereditare un form o un altro oggetto consiste nell'utilizzare la finestra di dialogo Selezione ereditarietà. In tal modo è possibile recuperare e riutilizzare il codice o un'interfaccia utente precedentemente creata per altre soluzioni.

Nota

Per ereditare da un form con la finestra di dialogo Selezione ereditarietà, il progetto contenente tale form deve essere incorporato in un file eseguibile o in una DLL. Per compilare un progetto scegliere Compila soluzione dal menu Compila.

È possibile che le finestre di dialogo e i comandi di menu visualizzati siano diversi da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione del programma. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Gestione delle impostazioni.

Per creare un Windows Form ereditato da un form esistente utilizzando Selezione ereditarietà

  1. Scegliere Aggiungi Windows Form dal menu Progetto.

    Verrà visualizzata la finestra di dialogo Aggiungi nuovo elemento.

  2. Selezionare il modello Form ereditato e denominarlo nella casella Nome. Fare clic sul pulsante Aggiungi per procedere.

    Verrà aperta la finestra di dialogo Selezione ereditarietà. Se il progetto corrente include già form, essi vengono visualizzati nella finestra di dialogo Selezione ereditarietà.

  3. Per ereditare da un form in un altro assembly, fare clic sul pulsante Sfoglia.

  4. All'interno della finestra di dialogo Selezionare un file che contiene un componente da cui ereditare passare al progetto contenente il form o il modulo desiderato.

  5. Fare clic sul nome del file exe o del file dll per selezionarlo e scegliere il pulsante Apri.

    Si tornerà in questo modo alla finestra di dialogo Selezione ereditarietà all'interno della quale il componente risulta ora visualizzato unitamente al progetto in cui si trova.

  6. Selezionare il componente.

    Il componente verrà aggiunto al progetto in Esplora soluzioni. Se il componente include un'interfaccia utente, i controlli che fanno parte del form ereditato saranno contraddistinti da un glifo (Schermata VisualBasicInheritanceSymbol) e, una volta selezionati, verranno visualizzati con un bordo che indicherà il livello di sicurezza del controllo sul form di superclasse. I comportamenti, corrispondenti a diversi livelli di sicurezza, sono elencati nella tabella riportata di seguito.

    Livello di sicurezza del controllo

    Interazione possibile nella finestra di progettazione e nell'editor di codice con il form ereditato

    Public

    Bordo standard con quadratini di ridimensionamento: il controllo può essere ridimensionato e spostato. È possibile accedere al controllo internamente tramite la classe che lo dichiara ed esternamente tramite le altre classi.

    Protected

    Bordo standard con quadratini di ridimensionamento: il controllo può essere ridimensionato e spostato. È possibile accedere al controllo internamente tramite la classe che lo dichiara e tramite qualsiasi classe che eredita dalla classe padre, ma non è possibile accedere mediante classi esterne.

    Protected Internal (Protected Friend in Visual Basic)

    Bordo standard con quadratini di ridimensionamento: il controllo può essere ridimensionato e spostato. Accessibili internamente dalla classe che lo dichiara, di qualsiasi classe che eredita dal form padre e da altri membri dell'assembly che lo include.

    Internal (Friend in Visual Basic)

    Bordi standard senza quadratini di ridimensionamento: visualizzato nel form con proprietà Visible nella finestra Proprietà. Tutti gli aspetti del controllo saranno considerati in ogni caso di sola lettura. Non è possibile spostare il controllo, ridimensionarlo né modificarne le proprietà. Se il controllo è un contenitore di altri controlli, come una casella di gruppo, non è possibile aggiungere nuovi controlli né rimuovere i controlli esistenti, anche in caso di controlli con livello di sicurezza Public. È possibile accedere al controllo solo tramite altri membri dell'assembly che lo contiene.

    Private

    Bordi standard senza quadratini di ridimensionamento: visualizzato nel form con proprietà Visible nella finestra Proprietà. Tutti gli aspetti del controllo saranno considerati in ogni caso di sola lettura. Non è possibile spostare il controllo, ridimensionarlo né modificarne le proprietà. Se il controllo è un contenitore di altri controlli, come una casella di gruppo, non è possibile aggiungere nuovi controlli né rimuovere i controlli esistenti, anche in caso di controlli con livello di sicurezza Public. È possibile accedere al controllo solo tramite la classe che lo dichiara.

    Per ulteriori informazioni sulla modifica dell'aspetto di un form di base, vedere Effetti della modifica dell'aspetto di un form di base.

    Nota

    Quando si uniscono controlli e componenti ereditati con controlli e componenti standard in Windows Form, è possibile che si verifichino conflitti nell'ordine z. È possibile correggere il problema modificando l'ordine z, ovvero facendo clic nel menu Formato, scegliendo Ordine, e quindi Porta in primo piano o Porta in secondo piano. Per ulteriori informazioni sull'ordine z dei controlli, vedere Procedura: disporre oggetti su più livelli in Windows Form.

Vedere anche

Riferimenti

Finestra di dialogo Selezione ereditarietà

Istruzione Inherits

using (Riferimenti per C#)

Concetti

Effetti della modifica dell'aspetto di un form di base

Altre risorse

Ereditarietà visiva di Windows Form