Conversione di una pagina Web Form in un controllo utente

Se si è sviluppata una pagina Web Form e si desidera accedere alle relative funzionalità dall'applicazione, sarà possibile apportare alcune modifiche al file per trasformarlo in un controllo utente. Poiché gli elementi <html>, <body> e <form> non sono inclusi nei controlli utente, sarà necessario includere tali elementi nella pagina Web Form contenitore.

Attenzione   Se si sviluppa un controllo utente in una classe di codice sottostante, è necessario estendere la classe UserControl anziché la classe Page. Per ulteriori informazioni, vedere Sviluppo di controlli utente in un file di codice sottostante.

Per convertire una pagina Web Form in un controllo utente

  1. Rimuovere dalla pagina tutti gli elementi <html>, <body> e <form>. Nell'esempio che segue viene illustrata questa conversione.

    Pagina Web Form iniziale:

    <html>
    <script language="VB" runat=server>
    Sub EnterBtn_Click(Sender as Object, E as EventArgs)
    Label1.Text = "Hi " & Name.Text & " welcome to ASP.NET!"
    End Sub
    </script>
    <body>
    <h3> <u>Web Forms Page</u> </h3>
    <form>
    Enter Name: <asp:textbox id="Name" runat=server/>
    <asp:button Text="Enter" OnClick="EnterBtn_Click"
    runat=server/>
    <br><br>
    <asp:label id="Label1" runat=server/>
    </form>
    </body>
    </html>
    [C#]
    <html>
    <script language="C#" runat=server>
    void EnterBtn_Click(Object Sender, EventArgs E){
    Label1.Text = "Hi " + Name.Text + " welcome to ASP.NET!";
        }
    </script>
    <body>
    <h3> <u>Web Forms Page</u> </h3>
    <form>
    Enter Name: <asp:textbox id="Name" runat=server/>
    <asp:button Text="Enter" OnClick="EnterBtn_Click"
    runat=server/>
    <br><br>
    <asp:label id="Label1" runat=server/>
    </form>
    </body>
    </html>
    

    Controllo utente in seguito alla conversione:

    <h3> <u>User Control</u> </h3>
    <script language="VB" runat=server>
    Sub EnterBtn_Click(Sender as Object, E as EventArgs)
    Label1.Text = "Hi " & Name.Text & " welcome to ASP.NET!"
    End Sub
    </script>
    Enter Name: <asp:textbox id="Name" runat=server/>
    <asp:button Text="Enter" OnClick="EnterBtn_Click"
    runat=server/>
    <br><br>
    <asp:label id="Label1" runat=server/>
    [C#]
    <h3> <u>User Control</u> </h3>
    <script language="C#" runat=server>
    void EnterBtn_Click(Object Sender, EventArgs E){
    Label1.Text = "Hi " + Name.Text + " welcome to ASP.NET!";
        }
    </script>
    Enter Name: <asp:textbox id="Name" runat=server/>
    <asp:button Text="Enter" OnClick="EnterBtn_Click"
    runat=server/>
    <br><br>
    <asp:label id="Label1" runat=server/>
    
  2. Se nella pagina Web Form è presente una direttiva @ Page, modificarla in una direttiva @ Control.

    Nota   Per evitare errori del parser, quando si converte una pagina in un controllo utente, rimuovere tutti gli attributi supportati dalla direttiva @ Page che non sono supportati dalla direttiva @ Control. Per ulteriori informazioni, vedere Sintassi delle direttive.

  3. Includere un attributo className nella direttiva @ Control. In questo modo il controllo utente può essere tipizzato in modo sicuro quando viene aggiunto a una pagina o ad altri controlli server a livello di programmazione.

  4. Assegnare al controllo un nome di file che indichi l'uso che si desidera farne e modificare l'estensione del file da ASPX in ASCX.

Vedere anche

Controlli utente Web Form | Inclusione di un controllo utente in una pagina Web Form | Creazione di un controllo utente | Gestione di eventi server in pagine Web Form | Gestione degli eventi dei controlli utente