Bilder dessen Pfad in DB liegen im element anzeigen?

Deletemaster

Erfahrenes Mitglied
Hallo zusammen,
ich möchte einen kleinen Webshop entwickeln! C#
Ich habe die Bilder NICHT direkt in der Access DB gespeichert, sondern nur den relativen Pfad als "text"
Bei einer einzelnen Query ist das kein Problem: Ich lasse mir das Bild in einem Image-Element anzeigen, dem ich den Pfad als URL übergebe!
Ich möchte aber zB. x Datensätze anzeigen!
Das DataGrid eignet sich wohl nicht dafür, weil man die Felder nicht als Image formatieren kann.
Kann mir bitte jemand helfen?
Ich suche jetzt schon fast 2 Wochen nach einer Lösung. Ich habe zwar Anregungen bekommen, die ich aber nicht umsetzen konnte.
Es wäre schön, wenn mir vielleicht jemand ein Codebeispiel zeigen könnte ;)
Vielen Dank für Eure Hilfe...
gruß frank
 
Bau doch einfach eine HTML-Tabelle per Schleife, in dessen Felder Du jeweils Image-Tags mit dem Pfad baust.

Du kannst in einem Datagrid auch Template-Zeilen einbauen, in die Du beliebige Controls (auch Image) einfügen kannst.
Wie das jeweilige Image automatisch den richtigen Wert erhält, weiß ich nicht, aber du kannst ihn dann auch zeilenweise zuweisen.
 
@Gorcky

Danke erst mal für Deine schnelle Antwort!
Die Idee mit der Tabelle klingt gut, ich hab da schon einiges probiert aber leider nicht hinbekommen:(
Könntest Du mir bitte die sache mal als code zeigen?
Also den Code-Behind und HTML-Code ! Ich weiß leider nicht wie es sonst umsetzen soll :(
Danke für Deine Hilfe...
gruß frank
 
Deletemaster:
Hallo zusammen,
Ich habe ein DataGrid mit einer TemplateColumn:

Code:

<asp:TemplateColumn HeaderText="Bild">
<ItemTemplate>
<asp:Image ID="Image1" Runat="server">
</asp:Image>
</ItemTemplate>
</asp:TemplateColumn>


Wie kann ich jetzt dem "Image" die BildURL zuweisen, die sich in meiner DB im Feld: "Bildname" (Typ text) zuweisen ?
Vielleicht kann mir jemand helfen
Danke
gruß frank
 
Ich habe so etwas leider auch noch nicht gemacht.
Ich habe aber mal in einem DataTable alle "True" in "ja" und alle "False" in "Nein" geändert. Das sah dann so aus:
Code:
private void DGTerminuebersicht_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
	if(e.Item.Cells[13].Text.Equals("True"))
		e.Item.Cells[13].Text = "ja";
	else if(e.Item.Cells[13].Text.Equals("False"))
		e.Item.Cells[13].Text = "nein";
}
Dabei wird auf die Spalte der jeweiligen Zeile zugegriffen.
Ist vielleicht ein bisschen dreckig, Du könntest aber den den Link in einer anderen Spalte ausgeben lassen und diesen mit obigem entsprechend modifizierten Code in deine Image-Spalte übertragen. Wenn ich das irgendwo richtig gelesen habe, kann man auch Spalten "aublenden", indem man ihre Width auf 0 festlegt, so dass dein Link nicht zu sehen wäre.

Poste mal deine Lösung, wenn du eine hast.

Wäre aber auch nett, wenn jemand anderes einen besseren Vorschlag als meinen postet - ich lerne auch gerne dazu. :)
 
Zurück