Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1563 | Anzahl registrierter User: 1895 | Besucher online: 118
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

WebControl in einen String rendern.


Autor: Jürgen Gutsch
Sprache: C#
Bewertung:
noch nicht bewertet
Anzahl der Aufrufe: 6474
  
Kick it on dotnet-kicks.de  

Beschreibung:

Hier eine Methode, um ein WebControl, oder ein HtmlControl in einen String zu render

Abgelegt unter: HtmlControl, WebControl, StringBuilder, StringWriter, HtmlTextWriter, RenderControl.



C#
1
2
3
4
5
6
7
8
public string RenderControl2String(Control ctrl)
{
  System.Text.StringBuilder sb = new System.Text.StringBuilder();
  System.IO.StringWriter sw = new System.IO.StringWriter(sb);
  System.Web.UI.HtmlTextWriter tw = new HtmlTextWriter(sw);
  ctrl.RenderControl(tw);
  return sb.ToString();
}
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)

Nicole schrieb am:  14.11.2007 19:31:42

Guten Abend,

Ich habe in Visual Studio 2005 eine .aspx Seite auf dem sich ein Panel mit Controls befinden (Controlbox und sämtliche Textfelder)

Diese Methode hier mit Hilfe der PDf Komponente iText, gibt mir die Inhalte der Controls (also den Text) in einer PDF Datei wieder (siehe unten). Jedoch möchte ich, dass in dieser PDF Datei auch die Controls erscheinen und nicht nur der jeweilige Inhalt.

Wie muss ich denn meinen Code umändern damit das klappt?
Reicht es, wenn ich mein Panel rendere oder muss ich die ganzen Controls rendern? ich weiß einfach nicht wie ich meinen Code umändern muss, damit es klappt und hoffe, dass ihr mir helfen könnte.

Danke




Protected Sub makePDF(ByVal filename As String)

Dim Document As Document = New Document()

Dim writer As PdfWriter = New PdfWriter

Dim fontHelv As Font = New Font(Font.HELVETICA, 12, Font.NORMAL)

Dim cb As PdfContentByte

Dim bf As BaseFont

writer = PdfWriter.getInstance(Document, New FileStream(filename, FileMode.Create))

Document.setMargins(43, 0, 35, 0)

Document.open()

Document.add(New Paragraph(48, " " + Label1.Text, fontHelv))

Document.add(New Paragraph(38, lblAngabenZumNeuger„t.Text, fontHelv))

cb = writer.getDirectContent()

bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED)

cb.setFontAndSize(bf, 7)

cb.beginText()

cb.setTextMatrix(480, 760)

cb.showText(lblId.Text)


Jürgen Gutsch schrieb am:  14.11.2007 23:04:28

Hallo Nicole,

ich bezweifle, das iTextSharp (ich denke diese nutzt du, und nicht iText) alle Controlls darstellen kann, zumindest aus einem HTML String heraus. iTextSharp ist, oder wahr es bis vor ein Jahr, sehr einfach gestrickt.

Hat dir die Diskussion auf ASP.NET Zone noch nicht weitergeholfen?
http://www.aspnetzone.de/forums/thread/187534.aspx
(Ich habe dir dort ebenfalls geantwortet)


schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.