2012-03-25 11 views
0

Ich arbeite an der WEB-App auf C# VS 2010. Ich habe WEB-Formular mit der Schaltfläche und Image-Steuerelement. Ich zeichne mein eigenes Bild in Bitmap.Image1.ImageUrl = .. ändert nicht das Bild auf der WEB-Seite

 bitmap.Save(Server.MapPath("pic1.jpg"), ImageFormat.Jpeg); 
     Image1.ImageUrl = Server.MapPath("pic1.jpg"); 

Das Problem ist, dass der obige Code nicht das Bild ändert sich in "Image1"

Tryed I auch wie folgt: bitmap.Save (Response.OutputStream, ImageFormat.Jpeg); Es funktioniert. Ich sehe mein Bild. Aber ich sehe keine anderen Kontrollen auf der WEB-Seite: keine meine Tasten, Etiketten, etc. Nur das Bild auf der Seite.

Vielleicht muss ich mein eigenes Bild in Bitmap irgendwie an Image1 binden?

Danke.

+1

Was passiert mit diesem Code? Wird die Datei gespeichert? Wann wird dieser Code in Bezug auf die Seitenausgabe ausgeführt? Vielleicht setzen Sie 'Image1.ImageUrl', nachdem es bereits im Browser gerendert wurde? Wir brauchen mehr Kontext über diesen Code. (Auch das, was Sie ebenfalls versucht haben, führte zu dem erwarteten Verhalten. Wenn Sie _only_ nur ein Bild an den Browser ausgeben, wird dies der gesamte Browser sehen.) – David

Antwort

2

Die Server.MapPath gibt eine Dateiname zurück. Auf der anderen Seite erwartet Image.ImageUrl eine gültige url.

Wie erwarten Sie, dass ein Dateiname magisch als URL fungiert?

Sie lieber etwas wollen wie

Image1.ImageUrl = this.ResolveUrl("pic1.jpg"); 

oder etwas ähnliches, die Wege zu schiffbaren uris löst.

+0

Ja !!! Danke, es funktioniert. – user993354

+0

Aber wie wäre es mit meiner zweiten Frage? Warum bitmap.Save verwenden (Response.OutputStream, ImageFormat.Jpeg); Ich sehe nur dieses Bild auf der Seite. Keine anderen meine Kontrollen auf der Seite (Knopf, Etiketten, etc.) – user993354

+0

Http/html funktioniert nicht so - Sie können ** ** ** nicht ** ein Bild und HTML in der gleichen Antwort Stream! –

Verwandte Themen