Controlli utente Web Form

Oltre ai controlli server Web e HTML, è possibile creare facilmente controlli personalizzati riutilizzabili servendosi delle stesse tecniche apprese per sviluppare pagine Web Form. Questi controlli sono denominati controlli utente.

I controlli utente offrono un modo semplice di suddividere e riutilizzare funzionalità comuni di interfaccia utente tra le applicazioni Web ASP.NET. Come accade per una pagina Web Form, è possibile creare questi controlli con un editor di testo o utilizzando classi di codice sottostanti. Analogamente a una pagina Web Form, i controlli utente vengono compilati al momento della prima richiesta, quindi vengono memorizzati nella memoria del server per velocizzare la risposta alle richieste successive. Diversamente dalle pagine, i controlli utente non possono essere tuttavia richiesti in modo indipendente. Il loro funzionamento è infatti vincolato all'inclusione in una pagina Web Form. Per ulteriori informazioni sulla relazione tra le pagine Web Form e i controlli utente, vedere Conversione di una pagina Web Form in un controllo utente.

I controlli utente offrono maggiore flessibilità rispetto agli SSI (Server-Side Include) grazie all'accesso al supporto del modello a oggetti fornito da ASP.NET. Anziché limitarsi a includere le funzionalità fornite da un altro file, è possibile programmare utilizzando tutte le proprietà dichiarate nel controllo, come avviene per qualsiasi altro controllo server ASP.NET.

Benché per la creazione di un controllo sia necessario utilizzare un solo linguaggio, in un'unica pagina Web Form è possibile includere più controlli utente creati in diversi linguaggi. È possibile, ad esempio, creare un controllo utente con Visual Basic, che importi dati da un file XML, e un controllo utente con C#, contenente un form per gli ordini, per poi includere entrambi i controlli nella stessa pagina Web Form.

Nota   Quando si crea un'applicazione Web utilizzando Visual Studio .NET, tutte le pagine e i controlli utente dell'applicazione devono essere scritti con lo stesso linguaggio di programmazione.

È inoltre possibile memorizzare nella cache l'output di un controllo utente in modo indipendente dal resto della pagina Web Form che lo contiene. Se utilizzata correttamente, questa tecnica, denominata utilizzo della cache a livello di frammento, può migliorare le prestazioni del sito. Se ad esempio il controllo utente contiene un controllo server ASP.NET che effettua una richiesta di database, mentre il resto della pagina contiene solo testo effettivo e codice semplice che viene eseguito sul server, è possibile memorizzare nella cache il solo controllo utente per migliorare le prestazioni dell'applicazione. Per ulteriori informazioni, vedere Memorizzazione nella cache di parti di una pagina ASP.NET.

In questa sezione

Sezioni correlate

  • Controlli server ASP.NET
    Vengono descritti i quattro tipi di controlli server disponibili e viene spiegato come crearli e programmarli nelle pagine Web Form.
  • Pagine Web Form
    Viene descritto come creare pagine Web basate su form ed elaborate sul server.
  • Memorizzazione nella cache di parti di una pagina ASP.NET
    Vengono descritte le tecniche che possono essere utilizzate per memorizzare nella cache parti di pagine utilizzando la direttiva @OutputCache e i controlli utente. Questa tecnica è utile se non si desidera memorizzare nella cache pagine intere.
  • Classe UserControl
    Vengono descritti gli eventi, i metodi e le proprietà della classe di .NET Framework associata ai controlli utente.