Community
Articoli
Software
Utility
Contatti

Creazione di Menu dinamici da Database
"L’articolo qui proposto, illustra come creare in modo dinamico, un Menu direttamente leggendo i dati da un database utilizzando la tecnologia Asp.Net 2.0, il linguaggio usato sarà VB.Net."

Categoria: Programmazione »» .Net Framework

A cura di: Massimiliano Urioni

Pubblicato il: giovedì 23 ottobre 2008



La pagina visualizza due Menu, diversificando l’orientamento, uno in orizzontale e l’altro in verticale come mostrato in figura 1.

 
 
 
Esempio Figura 1
 
La maschera, in questione, illustra come caricare dinamicamente da un database un oggetto di tipo menu senza il supporto del “SiteMapPath”. L’assegnazione dei dati relativi al menu avviene nell’evento Page_Load.  Passiamo al sodo.
 
Ora passiamo alla Web-Form                                  
 
In una form inseriamo:                                                                                                                    

un oggetto Table
HTML
< Table >
            < tr >
                < td >< /td >
            < /tr >
            < tr >< /tr >
            < tr >
                < td >< /td >
            < /tr >
< /Table >
 
 
Due oggetti di tipo Menu
HTML
< Table >
            < tr >
                < td >< asp:Menu ID="Menu1" runat="server" Orientation="horizontal" >< /asp:Menu >< /td >
            < /tr >
            < tr >< /tr >
            < tr >
                < td >< asp:Menu ID="Menu2" runat="server" Orientation="vertical" >< /asp:Menu >< /td >
            < /tr >
< /Table >
 
 
Impostiamo la seconda riga della tabella con un altezza = 100px
HTML
< Table >
            < tr >
                < td >< asp:Menu ID="Menu1" runat="server" Orientation="horizontal" >< /asp:Menu >< /td >
            < /tr >
            < tr height="100px" >< /tr >
            < tr >
                < td >< asp:Menu ID="Menu2" runat="server" Orientation="vertical" >< /asp:Menu >< /td >
            < /tr >
< /Table >
 
 
Dopo aver inserito tutti gli oggetti, sopra descritti, nella pagina di default salviamo il progetto.
 
Stesura del codice
Dopo aver completato la parte grafica della Form, non ci resta che scrivere il relativo codice.
 
Il progetto in esame prevede una parte grafica, il caricamento dei menu, con il proprio codice che verrà esplicitato di seguito. Ora procedo con la stesura del codice della pagina di default.
Di seguito si riporta il codice della nostra pagina
VB.Net
Partial Class _Default
    Inherits System.Web.UI.Page
 
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
       If Not IsPostBack Then
            Dim MyCls As New MyCustomSiteMap
 
            MyCls.BuildMenu(Menu1)
 
            MyCls.BuildMenu(Menu2)
 
            MyCls = Nothing
        End If
    End Sub
End Class
 
Fatto ciò, si crei una Classe dove creare un Metodo che carichi dinamicamente l’oggetto menu con i dati recuperati da un database.
 
Conclusioni:
Ora non ci resta che testare l'applicazioni, dopo aver verificato la correttezza del codice avviare il programma. Fate attenzione al DB….In allegato oltre al sorgente della pagina di Default troverete anche la classe MyCustomSiteMap, presente nel codice sorgente clsCustomSiteMap.vb che viene utilizzata nel progetto.
 
Tramite la parola download è possibile scaricare il file di esempio. Spero vi sia di aiuto.





1 Commento
Alison , venerdì 27 marzo 2009 alle 12:42
Bello lo script, si portebbe modificare in mod da poter arrivare fino a un 6° livello? Non funziona oltre il quarto livello. Grazie.
Lascia un commento

 
Tua email: (non verrà visualizzata)
Nome:
Commento:
Codice di sicurezza:
 

Digita il codice
visualizzato
a sinistra
Commenta




IPROGRAMMATORI.IT 2010. Tutti i diritti riservati. - P.IVA 04135460873 | Pubblicità | Termini e Condizioni - Privacy Policy | Utenti connessi : 1790 | RSS 2.0 - Le news di IProgrammatori.itRSS