Cambiare il titolo di una pagina ASP.NET con uno user control

Massimo Cappellesso

di , in UserScript, ASP.NET, User Controls,

Gli User Control sono molto utili per "inglobare" e riutilizzare le funzionalità di una parte di pagina ASP.NET.
Con questo script vedremo come cambiare nome di una pagina ASP.NET utilizzando uno User Control.
Per prima cosa creiamo il file .ascx che conterrà l'inizio della nostra pagina, aggiungedo al Tag html due proprietà note di ASP.NET: id e runat.<br/>Sempre all'interno del file andremo a gestire, nel'evento Page_Load una proprietà di sola lettura che verrà settata nella pagina che richiama lo User Control.<br/>Nel caso la proprietà TitoloPagina non venga impostata lo User Control assegnerà un titolo di default.<br/><br/> Header.ascx</p><div class="codebox"><pre><span style="background-color:#FFFF00; color:Black"><%@Control Language="VB"%></span> <span style="color:#0000FF"><</span><span style="color:#800000">html</span><span style="color:#0000FF">></span><span style="color:#0000FF"><</span><span style="color:#800000">head</span><span style="color:#0000FF">></span> <span style="color:#0000FF"><</span><span style="color:#800000">title</span> <span style="color:#FF0000">id</span>=<span style="color:#0000FF">"TitoloPagina"</span> <span style="color:#FF0000">runat</span>=<span style="color:#0000FF">"server"</span><span style="color:#0000FF">></span>Titolo<span style="color:#0000FF"></</span><span style="color:#800000">title</span><span style="color:#0000FF">></span> <span style="color:#0000FF"></</span><span style="color:#800000">head</span><span style="color:#0000FF">></span> <span style="color:#0000FF"><</span><span style="color:#800000">body</span><span style="color:#0000FF">></span> <span style="color:#0000FF"><</span><span style="color:#800000">script</span> <span style="color:#FF0000">language</span>=<span style="color:#0000FF">"VB"</span> <span style="color:#FF0000">runat</span>=<span style="color:#0000FF">"server"</span><span style="color:#0000FF">></span> Public WriteOnly Property Titolo as string Set If Value is Nothing then TitoloPagina.InnerHTML = "Titolo della pagina impostato dallo User Control" Else TitoloPagina.InnerHTML = Value End If End Set End Property <span style="color:#0000FF"></</span><span style="color:#800000">script</span><span style="color:#0000FF">></span> Pagina.aspx <span style="background-color:#FFFF00; color:Black"><%@ Page Language="VB" %></span> <span style="background-color:#FFFF00; color:Black"><%@ Register TagPrefix="Pagina" TagName="Header" src="Header.ascx" %></span> <span style="color:#0000FF"><</span><span style="color:#C71585">Pagina</span>:<span style="color:#800000">Header</span> <span style="color:#FF0000">id</span>=<span style="color:#0000FF">"header"</span> <span style="color:#FF0000">runat</span>=<span style="color:#0000FF">"server"</span> <span style="color:#FF0000">Titolo</span>=<span style="color:#0000FF">"Titolo impostato dalla pagina .aspx"</span> <span style="color:#0000FF">/></span></pre></div><p></p> </div> <footer> </footer> </article> </div></div><div id="rightmenu"><div id="ScriptView_ctl00_0_RightBox_0"> <div class="article_infobox"> <ul><li><a href="https://secure.aspitalia.com/profile/login.aspx?ReturnUrl=http%3a%2f%2fwww.aspitalia.com%2fscript%2f520%2fCambiare-Titolo-Pagina-ASP.NET-User-Control.aspx?printable=1" class="img-print"><strong>Stampa</strong></a></li> </ul> </div> </div><script type="text/javascript" src="http://g.aspitalia.com/g/RightFocus/0/310120/20120523164230/"></script><div class="rightbox_centered"><script type="text/javascript"><!-- OAS_AD('Bottom'); //--></script></div> <div class="rightbox">CONNECTIONSTRING</div><div class="rightboxcontent">Ti serve una stringa di connessione ad un database?<br /><ul><li><a href="http://www.aspitalia.com/servizi/connectionstring-SQLServer.aspx">SQL Server</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-Access.aspx">Access</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-Oracle.aspx">Oracle</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-MYSQL.aspx">MySQL</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-Excel.aspx">Excel</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-dBase.aspx">dBASE</a></li><li><a href="http://www.aspitalia.com/servizi/connectionstring-DSN.aspx">DSN</a></li></ul></div><div class="rightboxfooter"></div> <div class="rightbox" title="Membership, Roles e Profile API provider per ASP.NET 2.0, 3.5 e 4.0">PROVIDER ASP.NET</div><div class="rightboxcontent"><p>Seleziona il tuo provider per avere il web.config pronto per Membership, Roles e Profile API.</p><ul><li><a href="http://www.aspitalia.com/servizi/Membership-Roles-Profile-web.config-SqlServer.aspx">SQL Server</a></li><li><a href="http://www.aspitalia.com/servizi/Membership-Roles-Profile-web.config-Access.aspx">Access</a></li><li><a href="http://www.aspitalia.com/servizi/Membership-Roles-Profile-web.config-ActiveDirectory.aspx">Active Directory</a></li></ul></div><div class="rightboxfooter"></div> <div class="rightbox">Script via e-mail</div><div class="rightboxcontent"><p>Iscriviti alle nostre newsletter tematiche <strong>unoscript@lgiorno</strong> per ricevere gli script via e-mail.</p><p><strong><a href="https://secure.aspitalia.com/liste/iscrizione.aspx">Iscrivi subito! <span class="arrows">»»»</span></a></strong></p> </div><div class="rightboxfooter"></div> <div class="rightbox">In primo piano</div><div class="rightboxcontent medialist"> <div class="mediaContainer"><a href="http://www.winfxitalia.com/focuson/1277/Annunciate-Versioni-Ufficiali-Visual-Studio-11.aspx"><img src="http://www.aspitalia.com/servizi/focus/img/t/336/1277_home.jpg" alt=" " title="Annunciate le versioni ufficiali di Visual Studio 11" style="width:336px;height:123px;border:0px;" /></a> <div class="hoverMediaContainer"><h3 class="hoverMedia"><a href="http://www.winfxitalia.com/focuson/1277/Annunciate-Versioni-Ufficiali-Visual-Studio-11.aspx" class="media_text" title="Annunciate le versioni ufficiali di Visual Studio 11">Annunciate le versioni ufficiali di Visual Studio 11</a></h3></div></div> <div class="mediaContainer"><a href="http://www.aspitalia.com/focuson/1273/Rilasciato-Visual-Studio-11-Beta-Scopri-Novita.aspx"><img src="http://www.aspitalia.com/servizi/focus/img/t/336/1273_home.jpg" alt=" " title="Rilasciato Visual Studio 11 Beta: scopri tutte le novità!" style="width:336px;height:123px;border:0px;" /></a> <div class="hoverMediaContainer"><h3 class="hoverMedia"><a href="http://www.aspitalia.com/focuson/1273/Rilasciato-Visual-Studio-11-Beta-Scopri-Novita.aspx" class="media_text" title="Rilasciato Visual Studio 11 Beta: scopri tutte le novità!">Rilasciato Visual Studio 11 Beta: scopri tutte le novità!</a></h3></div></div> <div class="mediaContainer"><a href="http://www.winrtitalia.com/focuson/1272/Windows-Consumer-Preview-Segui-Diretta.aspx"><img src="http://www.aspitalia.com/servizi/focus/img/t/336/1272_home.jpg" alt=" " title="Windows 8 Consumer Preview: segui con noi la diretta" style="width:336px;height:123px;border:0px;" /></a> <div class="hoverMediaContainer"><h3 class="hoverMedia"><a href="http://www.winrtitalia.com/focuson/1272/Windows-Consumer-Preview-Segui-Diretta.aspx" class="media_text" title="Windows 8 Consumer Preview: segui con noi la diretta">Windows 8 Consumer Preview: segui con noi la diretta</a></h3></div></div> </div><div class="rightboxfooter"></div> <div class="rightbox">Media</div><div class="rightboxcontent"> <div class="clearall medialist"> <div class="mediaContainer"><article><a href="http://media.aspitalia.com/events/CDays12BA-app-mobile-HTML5-jQuery-Mobile.media"><img src="http://media.aspitalia.com/preview/events/t/336/CDays12BA-app-mobile-HTML5-jQuery-Mobile.jpg" style="width:336px; height:249px;" alt=" " title="Sviluppare applicazioni web mobile con HTML5 e jQuery mobile di Andrea Colaci, 7 ore fa" /></a><div class="hoverMediaContainer"><header><h1 class="hoverMedia"><a href="http://media.aspitalia.com/events/CDays12BA-app-mobile-HTML5-jQuery-Mobile.media" title="Sviluppare applicazioni web mobile con HTML5 e jQuery mobile di Andrea Colaci, 7 ore fa">Sviluppare applicazioni web mobile con HTML5 e jQuery mobile</a><time pubdate="pubdate" datetime="2012-05-23T07:00:00.0000000Z"></time></h1></header></div></article></div> <div class="mediaContainer"><article><a href="http://media.aspitalia.com/events/cdays12BA-Windows-8-WinJS.media"><img src="http://media.aspitalia.com/preview/events/t/336/cdays12BA-Windows-8-WinJS.jpg" style="width:336px; height:249px;" alt=" " title="Metro Style App per Windows 8 con HTML e Javascript di Marco De Sanctis, 2 giorni fa alle 09:00" /></a><div class="hoverMediaContainer"><header><h1 class="hoverMedia"><a href="http://media.aspitalia.com/events/cdays12BA-Windows-8-WinJS.media" title="Metro Style App per Windows 8 con HTML e Javascript di Marco De Sanctis, 2 giorni fa alle 09:00">Metro Style App per Windows 8 con HTML e Javascript</a><time pubdate="pubdate" datetime="2012-05-21T07:00:00.0000000Z"></time></h1></header></div></article></div> <div id="Footer_ctl00_AtAGlance_Media_ctl00_MoreLink"><a class="continue" href="http://media.aspitalia.com/">Tutti i media</a></div></div> </div><div class="rightbox_footer"> </div> <div class="rightbox">In evidenza</div><div class="rightboxcontent"> <ul><li><a class="heading_bold" href="http://www.winrtitalia.com/focuson/1270/29-Febbraio-Arriva-WinRTItalia.com-Sviluppo-Windows-Metro.aspx" title="Dal 29 febbraio arriva WinRTItalia.com: tutto sullo sviluppo per Windows 8 e Metro, pubblicato in primo piano su ASPItalia.com">Dal 29 febbraio arriva WinRTItalia.com: tutto sullo sviluppo per Windows 8 e Metro</a></li><li> <img src="http://gui.aspitalia.com/images/common/media_small.png" style="width:15px;height:15px" alt="Contributo video" /> <a class="heading_bold" href="http://media.aspitalia.com/events/CDays12BA-app-mobile-HTML5-jQuery-Mobile.media" title="Sviluppare applicazioni web mobile con HTML5 e jQuery mobile, pubblicato oggi su ASPItalia.com">Sviluppare applicazioni web mobile con HTML5 e jQuery mobile</a></li><li><a class="heading_bold" href="http://www.linqitalia.com/articoli/entity-framework/disegnare-applicazione-servizi-entity-framework-wcf.aspx" title="Disegnare un'applicazione a servizi con Entity Framework e WCF, pubblicato oggi su LINQItalia.com">Disegnare un'applicazione a servizi con Entity Framework e WCF</a></li><li><a class="heading_bold" href="http://www.html5italia.com/script/35/Tag-Time-HTML5.aspx" title="Il nuovo tag time in HTML5, pubblicato oggi su ASPItalia.com">Il nuovo tag time in HTML5</a></li><li><a class="heading_normal" href="http://www.winphoneitalia.com/script/70/Salvare-Leggere-Rapidamente-Impostazioni-Applicazione-Windows-Phone.aspx" title="Salvare e leggere rapidamente le impostazioni di un'applicazione Windows Phone, pubblicato ieri su WinPhoneItalia.com">Salvare e leggere rapidamente le impostazioni di un'applicazione Windows Phone</a></li><li> <img src="http://gui.aspitalia.com/images/common/media_small.png" style="width:15px;height:15px" alt="Contributo video" /> <a class="heading_normal" href="http://media.aspitalia.com/events/cdays12BA-Windows-8-WinJS.media" title="Metro Style App per Windows 8 con HTML e Javascript, pubblicato 2 giorni fa su ASPItalia.com">Metro Style App per Windows 8 con HTML e Javascript</a></li><li><a class="heading_normal" href="http://www.aspitalia.com/script/1088/Aggiungere-Handler-Globale-Chiamate-AJAX-ASP.NET-MVC.aspx" title="Aggiungere un handler globale per le chiamate AJAX di ASP.NET MVC, pubblicato 2 giorni fa su ASPItalia.com">Aggiungere un handler globale per le chiamate AJAX di ASP.NET MVC</a></li><li><a class="heading_normal" href="http://www.winfxitalia.com/focuson/1277/Annunciate-Versioni-Ufficiali-Visual-Studio-11.aspx" title="Annunciate le versioni ufficiali di Visual Studio 11, pubblicato 4 giorni fa su WinFXItalia.com">Annunciate le versioni ufficiali di Visual Studio 11</a></li></ul> </div><div class="rightboxfooter"></div><div class="rightbox">MISC</div><div class="rightboxcontent"><ul><li><a href="http://www.aspitalia.com/autori/">I nostri autori</a></li><li><a href="http://www.aspitalia.com/misc/collabora.aspx">Collabora con noi!</a></li><li><a href="http://www.aspitalia.com/ads/"><strong>Media Kit - Pubblicità sul nostro network</strong></a></li> </ul> </div><div class="rightboxfooter"></div> </div></div><footer><div id="footer"><div class="clearall group"><div class="footerColumn"><h2 class="contentheading">Info</h2><div class="contentbox"><ul><li><a href="http://www.aspitalia.com/misc/info.aspx">Policy</a></li><li><a href="http://www.aspitalia.com/misc/chisiamo.aspx">Chi siamo</a></li><li><a href="http://www.aspitalia.com/misc/contatti.aspx">Contatti</a></li><li><a href="http://www.aspitalia.com/misc/legale.aspx">Note legali</a></li><li><a href="http://www.aspitalia.com/liste/informativa.aspx">Privacy</a></li><li><a href="http://www.aspitalia.com/ads/">Pubblicità</a></li><li><a href="http://www.aspitalia.com/misc/mobile.aspx">App e versione mobile</a></li></ul></div></div> <div class="footerColumn"><h2 class="contentheading">In contatto</h2><div class="contentbox"><ul><li><a href="http://feed.aspitalia.com/">I nostri feed</a>: <a href="http://feed.aspitalia.com/feed.xml" class="rssButton" title="Disponibile anche in formato RSS">RSS</a></li><li><a href="http://www.facebook.com/ASPItalia" target="_blank"><img src="http://gui.aspitalia.com/images/common/facebook.gif" style="width:13px;height:13px;" alt=" "/> Facebook</a> | <a href="http://twitter.com/aspitalia/" target="_blank"><img src="http://gui.aspitalia.com/images/common/twitter.gif" style="width:13px;height:13px;" alt=" "/> Twitter</a> | <a href="http://www.linkedin.com/groups?gid=3326851" target="_blank"><img src="http://gui.aspitalia.com/images/common/linkedin.gif" style="width:13px;height:13px;" alt=" "/> LinkedIn </a></li><li>I forum <a href="http://forum.aspitalia.com/forum/nntp/">via NNTP</a>, <a href="http://forum.aspitalia.com/forum/mailinglist/">mailing list</a></li> <li><strong><a href="http://books.aspitalia.com/">Libri</a> Guide complete:</strong> <a href="http://books.aspitalia.com/ASP.NET-4.0/" title="Libro 'ASP.NET 4.0 in C# e VB - Guida completa per lo sviluppatore e il designer'">ASP.NET 4.0</a>, <a href="http://books.aspitalia.com/CSharp-4/" title="Libro 'C# 4.0 - Guida completa per lo sviluppatore e il designer'">C# 4 e VS 2010</a>, <a href="http://books.aspitalia.com/VisualBasic-2010/" title="Libro 'Visual Basic 2010 - Guida completa per lo sviluppatore e il designer'">VB 2010</a>, <a href="http://books.aspitalia.com/Windows-Phone/" title="Libro 'Sviluppare applicazioni per Windows Phone'">Windows Phone</a>, <a href="http://books.aspitalia.com/Silverlight-3.0/" title="Libro 'Silverlight 3.0 - Guida completa per lo sviluppatore e il designer'">Silverlight 3.0</a></li><li><strong><a href="http://books.aspitalia.com/">Libri</a> Espresso:</strong> <a href="http://books.aspitalia.com/HTML5/" title="Libro 'HTML5 - Espresso'">HTML5</a>, <a href="http://books.aspitalia.com/ASP.NET-4.0-Espresso/" title="Libro 'ASP.NET 4.0 Espresso'">ASP.NET 4.0</a>, <a href="http://books.aspitalia.com/CSharp-4.0-Espresso/" title="Libro 'C# 4.0 Espresso'">C# 4.0</a>, <a href="http://books.aspitalia.com/VisualBasic-2010-Espresso/" title="Libro 'Visual Basic 2010 Espresso'">VB 2010</a></li></ul></div></div> <div class="footerColumn"><h2 class="contentheading">Da non perdere</h2><div class="contentbox"><ul><li><a href="http://www.winrtitalia.com/focuson/1270/29-Febbraio-Arriva-WinRTItalia.com-Sviluppo-Windows-Metro.aspx" title="Dal 29 febbraio arriva WinRTItalia.com: tutto sullo sviluppo per Windows 8 e Metro, pubblicato in primo piano su ASPItalia.com">Dal 29 febbraio arriva WinRTItalia.com: tutto sullo sviluppo per Windows 8 e Metro</a></li><li><a href="http://media.aspitalia.com/events/CDays12BA-app-mobile-HTML5-jQuery-Mobile.media" title="Sviluppare applicazioni web mobile con HTML5 e jQuery mobile, pubblicato oggi su ASPItalia.com">Sviluppare applicazioni web mobile con HTML5 e jQuery mobile</a></li><li><a href="http://www.linqitalia.com/articoli/entity-framework/disegnare-applicazione-servizi-entity-framework-wcf.aspx" title="Disegnare un'applicazione a servizi con Entity Framework e WCF, pubblicato oggi su LINQItalia.com">Disegnare un'applicazione a servizi con Entity Framework e WCF</a></li><li><a href="http://www.html5italia.com/script/35/Tag-Time-HTML5.aspx" title="Il nuovo tag time in HTML5, pubblicato oggi su ASPItalia.com">Il nuovo tag time in HTML5</a></li></ul></div></div> </div> <div class="line clearall"><strong><span title="Microsoft Windows NT 6.0.6002 Service Pack 2 / NETFX 4.0.30319.544 / AppFabric">©</span> Dal '98 <a href="http://www.aspitalia.com/misc/network.aspx">ASPItalia.com Network</a>™</strong> | <strong><a href="http://g.aspitalia.com/g/c/716/" target="_blank"><img src="http://g.aspitalia.com/i/5dlabs_power.png" style="width:80px; height:20px;" alt="5DLabs.it" title="Questo sito è gestito da 5DLabs.it - Consulting and more!" /></a></strong> | <strong><a href="http://g.aspitalia.com/g/c/672/" target="_blank"><img src="http://g.aspitalia.com/i/aruba_text.png" style="width:90px; height:20px;" alt="Server di Aruba.it" title="Server di Aruba.it" /></a></strong> | <a href="http://www.aspitalia.com/" title="ASPItalia.com: tutto su ASP.NET e IIS">ASP.NET</a> | <a href="http://www.html5italia.com/" title="HTML5Italia.com: tutto su HTML5, CSS3, ECMAScript e standard web">HTML5</a> | <a href="http://www.linqitalia.com/" title="LINQItalia.com: tutto su LINQ e Entity Framework">LINQ</a> | <a href="http://www.silverlightitalia.com/" title="SilverlightItalia.com: tutto su Silverlight e RIA">Silverlight</a> | <a href="http://www.winphoneitalia.com/" title="WinPhoneItalia.com: tutto su Windows Phone">Windows Phone</a> | <a href="http://www.winfxitalia.com/" title="WinPhoneItalia.com: tutto su .NET Framework, Visual Studio, Azure, C# e Visual Basic">.NET Framework</a> | <a href="http://www.winrtitalia.com/" title="WinPhoneItalia.com: tutto su Windows 8, WinRT e Metro">Windows 8</a></div> </div></footer></div></div></body></html>