10. maj 2006 - 15:07Der er
11 kommentarer og 1 løsning
Billeder i formview fra codebehind?
Hej, Jeg henter x antal billeder op af min database med en repeater og i ItemDataBound får jeg fat i billedets navn. Nu skal jeg så skrive disse billeder ud i et formview, men hvordan gør jeg det smartest?
Hvis du skal vise billederne - skal du sørge for at du har en url du kan henvise til, så du skal lave en aspx-fil (en ashx fil er at foretrække) - der alene returnerer billedet. Ser lige om jeg kan finde et link. Mvh
// en imageserver (ImageServer.ashx) <%@ WebHandler Language="C#" Class="ImageServer" %>
using System; using System.Web; using System.Drawing; using System.Drawing.Imaging; using System.IO;
public class ImageServer : IHttpHandler { public void ProcessRequest (HttpContext context) { string imageFolder = @"C:\testfiles"; string imageFileName = context.Request.QueryString["imageFileName"]; Bitmap bmp = new Bitmap(Path.Combine(imageFolder, imageFileName)); context.Response.ContentType = "image/jpeg"; bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg); bmp.Dispose(); }
public bool IsReusable { get { return true; } } }
Du skal så self. ikke hente filen i filsystemet, men suge det fra databasen som rå bytes, som du så kan lægge i din outputstream - så du skal lave koden lidt om til noget i stil med:
Hej snepnet, Men jeg får jo ikke billederne fra en querystring. Jeg hiver billed-filnavnet op af databsen via repeateren og derfra skal jeg jo bare smide billederne ud på siden. Billederne ligger på filsystemet. Kan man ikke generere et asp:imgage on the fly og smide det ind i et panel eller lignende?
Ahh... ja det gør det jo lidt enklere :o) Så skal du bare sørge for at billedet kan hentes via en url, og så sætte et Image ind, og sikre at ImageUrl-property'en er sat til den respektive url. Mvh
(yes) Jeg arbejder med vb.net og har oversat din kode til følgende :) Dim img As Image = New Image() img.ImageUrl = "/asdf/" ditPanel.Controls.Add(img)
Men den acceptere ikke Image(), får blå streg under og følgende error: 'New' cannot be used on a class that is declared 'MustInherit'
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.