Questo script consente di creare molto rapidamente da una directory contenente immagini in formato *.jpg una galleria di immagini da personalizzare come meglio si vuole.
Nello script si fa uso della classe 'DirectoryInfo' e 'FileInfo' per estrarre le informazioni e le immagini dalla cartella indicata.
Lo script analizza i files contenuti in una directory con estenzione *.jpg e li restituisce sul web con una paginazione di 6 immagini per pagina.
Le variabili eventualmente da cambiare sono:
- la directory delle immagini Server.MapPath("\Galleria\Gallery\img")
- l'estensione delle immagini ("*.jpg")
<SCRIPT RUNAT="SERVER"> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) CaricaLnk(CaricaImg(Request.QueryString("ID"))) End Sub Private Function CaricaLnk(ByVal intI As Integer) ' Questa funzione crea una paginazione delle immagini Dim a As System.Web.UI.WebControls.HyperLink Dim resto As Integer Dim j As Integer If (intI Mod 6) > 0 Then resto = intI / 6 Else resto = (intI / 6) - 1 End If For j = 0 To resto a = New System.Web.UI.WebControls.HyperLink If j <> Request.QueryString("ID") Then a.NavigateUrl = "?ID=" & j End If a.Text = " [" & j & "] " PH.Controls.Add(a) Next End Function Private Function CaricaImg(ByVal Pagina As Integer) As Integer ' Legge il contenuto della directory Dim sr As IO.DirectoryInfo = New DirectoryInfo(Server.MapPath("\Galleria\Gallery\img")) Dim fi() As IO.FileInfo Dim i As Integer ' Carica un array di info sui files con estensione *.jpg della directory caricata fi = sr.GetFiles("*.jpg") Dim j As Integer = fi.GetLength(0) For i = 1 To 6 If ((Pagina * 6) + i - 1) <= j - 1 Then ' Associa l'immagine trovata al controllo Image e il controllo Hyperlink all'indirizzo dell'immagine Dim img As System.Web.UI.WebControls.Image img = DirectCast(FindControl("img" & i), System.Web.UI.WebControls.Image) img.ImageUrl = fi((Pagina * 6) + i - 1).FullName Dim a As System.Web.UI.WebControls.HyperLink a = DirectCast(FindControl("a" & i), System.Web.UI.WebControls.HyperLink) a.NavigateUrl = fi((Pagina * 6) + i - 1).FullName Else Dim img As System.Web.UI.WebControls.Image img = DirectCast(FindControl("img" & i), System.Web.UI.WebControls.Image) img.Visible = False End If Next CaricaImg = j End Function </SCRIPT> <form id="Form1" method="post" runat="server"> <asp:HyperLink runat=server id=a1> <asp:Image id=img1 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a6"> <asp:Image id=img6 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a5"> <asp:Image id=img5 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a4"> <asp:Image id=img4 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a3"> <asp:Image id=img3 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a2"> <asp:Image id=img2 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <br> <asp:PlaceHolder Runat=server ID=PH></asp:PlaceHolder> </form>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Load test di ASP.NET Core con k6
Catturare la telemetria degli eventi di output cache in ASP.NET Core
Definire le impostazioni di cache a livello di controller in ASP.NET Core 7
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Sfruttare la local cache del browser tramite gli ETag in ASP.NET Core
Implementare il throttling in ASP.NET Core
Cache policy su route groups di Minimal API in ASP.NET Core 7
Sfruttare l'output cache di ASP.NET Core 7 con i controller
Sfruttare i tag nell'output cache di ASP.NET Core 7
Migliorare la scalabilità di ASP.NET Core 7 grazie all'output cache
Raggruppare i parametri di una minimal API in un singolo oggetto in ASP.NET Core