VisualBasic ASP.Net Button mit Target Ausgabe

marger92

Ensign
Registriert
Juni 2009
Beiträge
189
Guten Tag,

ich habe zurzeit folgendes Problem:

Ich möchte auf der Seite, die ich mal als png angehängt habe, Hilfedateien aufrufen. Es sind z.B. Bilder und PDFs. Die Dateien stehen binär in einer MSSQL Datenbank und ich kann sie auch aufrufen. Allerdings werden Sie auf einer neuen Seite angezeigt und nicht dort, wo ich sie ausgegeben haben möchte. Siehe Bild.

Ich habe dabei jetzt an ein Frameset gedacht, um die PDF und das Menü gleichzeitig anzeigen zu lassen. Wenn ich jetzt generell in den <head>..</head> ein target Ziel schreibe, werden alle PostBacks in dem Frame. Und der Button hat alleine keinen target-tag.

Ich habe auch schon diese Lösung hier gefunden und bei mir angewendet, allerdings funktioniert diese (zumindest so) nicht!

Code:
Me.helpfrm.Target = "_blank" '_blank nur zu testzwecken, da noch kein frameset
        file = New Files()
        Dim data() As Byte = file.GetData(lbxfiles.SelectedItem.Value)          'Daten aus dem SQL-Server holen
        Dim type = file.GetTypeOf(lbxfiles.SelectedItem.Value)
        Response.AddHeader("Conten-Length", data.Length().ToString())           'Fortschrittsanzeige im Browser kann dargestellt werden
        Response.AddHeader("Content-Type", type)
        Response.ContentType = type

        If type = "application/pdf" Or type = "image/bmp" Or type = "image/jpeg" Or type = "image/png" Then                                      'Wenn es eine PDF-Datei ist, soll Sie im Browser ausgegeben werden
            Response.AddHeader("content-disposition", String.Format("inline;filename={0}", lbxfiles.SelectedItem.Value.Replace(" ", "_")))
        Else                                                                    'Wenn nicht PDF, bmp, jpg, png soll die Datei heruntergeladen werden
            Response.AddHeader("content-disposition", String.Format("attachement;filename={0}", lbxfiles.SelectedItem.Value.Replace(" ", "_")))
        End If
        Response.BinaryWrite(data)                                              'Ausgabe an den Benutzer
        Me.helpfrm.Target = "_self"

Ich hoffe ihr könnt mir helfen.
Schoneinmal danke im vorraus für euer bemühen.

mfg marger92

Edit:

Jetzt hab ich doch glatt das Bild vergessen...

 
Zuletzt bearbeitet:
Ich habe das ganze jetzt über einen Umweg gemacht. Ich schreibe zuerst die FileID in die Datenbank zu dem jeweiligen Kunden.
Dann rufe ich mittels Javascript die Seite auf. Diese sucht sich dann die FileID aus der DB und öffnet dieses File.

CODE

Code:
        customer = New Customer()
        file = New Files()
        Dim id As Int32 = file.GetIdOf(lbxfiles.SelectedItem.Value)
        'Try
        '    customer.SetFileToOpen(Request.Cookies("login")("cusid"), id)
        'Catch ex As Exception

        'End Try
        'Response.Write("<script>window.open('Output.aspx','foutput');</script>")
        'System.Threading.Thread.Sleep(500)
        'id = file.GetIdOf(lbxfiles.SelectedItem.Value)
        Try
            customer.SetFileToOpen(Request.Cookies("login")("cusid"), id)
        Catch ex As Exception

        End Try
        Response.Write("<script>window.open('Output.aspx','foutput');</script>")

mfg marger92
 
Zurück
Oben