Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[C#.Net 4.5] Icoon in een gridview met UI.Webcontrol

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

ben al een tijdje aan het proberen een icoontje van een programma weer te geven in een gridview op een webpagina.

De bestanden uit de map laat hij zien, maar het icoontje van het programma moet, naar mijn idee, ook te tonen zijn.

code:
1
2
3
            Icon ico =
                Icon.ExtractAssociatedIcon(@"C:\\profielen\\presentatie.pptx");
           return ico;


Dan heb ik een Icon bestand en dan?

Toevoegen met een typeof(Icon) werkt niet
code:
1
                dt.Columns.Add(new DataColumn("PictureURL", typeof(Icon)));


heeft iemand hier ervaring in?

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 23-11 11:34

mulder

ik spuug op het trottoir

Denk dat het naar een Image geconverteerd moet worden:
http://stackoverflow.com/...n-to-system-drawing-image

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
Dat werkt niet voor System.Web.UI.WebControls.Image

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 18-11 20:57
Een Image verwacht een image source (een URL naar een plaatje). Je zult iets moeten maken dat via HTTP een plaatje kan serveren, zodat de browser dit kan tonen.

Wat je zoekt is een HTTP Handler (MSDN: IHttpHandler Interface (System.Web)), zodat je de bytes van een geconverteerde image kunt serveren via een URL als <site>/images/geticon.ashx?file=filename.

Let hierbij wel op veiligheidsaspecten, je wilt eigenlijk niet dat het volledige pad zichtbaar wordt voor een eindgebruiker.

We are shaping the future


  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
Alex) schreef op zaterdag 27 april 2013 @ 09:58:
Let hierbij wel op veiligheidsaspecten, je wilt eigenlijk niet dat het volledige pad zichtbaar wordt voor een eindgebruiker.
En een aanvulling daar op; gebruik de ASP.NET virtual path provider en niet direct de classes uit de System.IO namespace. Wanneer je die wèl direct zou gebruiken, bypass je een boel beveiliging die in ASP.NET ingebouwd zit. Zo maak je het bijvoorbeeld mogeliijk dat paden buiten de applicatie verwerkt kunnen worden of dat gegevens uit beschermde folders binnen de applicatie, zoals de bin folder, verwerkt kunnen worden. Daarmee kan gevaarlijke kennis over je web applicatie of over de inrichting van je web server prijs gegeven worden...