Drucken

Hallo!

Wie kann ich einen Teil meiner aspx seite, in meinem fall eine tabelle drucken?? ich will wirklich nur dieses tabelle und nicht die ganze aspx seite drucken.
wie mach ich sowas? was muss ich beim drucken noch beachten???
ich hab schon öfter so links gesehen(printable format) wo sich eine neue seite öffnet und man dann gleich drucken kann. aber wie krieg ich die tabelle auf diese neue seite, denn ich will den inhalt der tabelle nicht nochmal berechnen, denn das wäre unnötig, sind auch soviele datenbankabfragen dabei.
bin für jede hilfe dankbar,
lg,
Andrea

Hey, du könntest die Inhalte der Tabelle in ein serverseitiges Array einlesen und in der neuen Seite dir diesen Array wieder auslesen…

Mfg - JENS

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

gute idee, danke!!! werd ich machen.
und wie drucke ich dann diese aspx seite? ich weiß nur wie man files druckt, die auf dem server gespeichert sind, also wo es auch einen pfad gibt.

danke und lg,
Andrea

Hallo Andrea,

Wenn auf deiner Seite nur die Tabelle zu drucken ist benutze css.

Dazu bindest du zwei css Dateien ein, eine für die Ansicht und eine zum Druck.

In der druck.css ist eine Klasse „nichtDrucken“ definiert:

nichtDrucken
{
visibility:hidden;
}
(Hoffe die Syntax stimmt so, bin zu faul(gähn))
Damit wirds beim Drucken ausgebelendet.

Dann alles was nicht in den Druck soll in divs stecken, die diese Klasse haben und ein Knopf (auch in diesen divs) der das drucken besorgt.

Kannst du im IE (ab version ??) auc in der Druckvorschau testen.

Für eine „komplette“ Umformtierung kannst du die Klassen für die Tabelle in den beiden css auchunterschiedlich definieren. Also fürs web bunt und im Druck nur schwarz/weiß.

Eine separate Seite ist m.E. nicht notwendig.

mfg
Dirk

Hm, also wenn du die Druckansicht hast, willst du bestimmt die ganze Seite drucken, gell? Am einfachsten isses denk ich mal, wenn du einfach den Java-Script-Befehlt „window.print()“ aufrufst, dann hast du’s mit einer Zeile gedruckt…

ciao - JENS

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo!

Ich danke euch beiden!!!
Mach mich gleich mal ans werk.

lg,
Andrea

Hallo!

Also ich hab das jetzt versucht, aber irgendwas mach ich falsch, denn es wird alles gedruckt und die Schriftart bleibt auch die gleiche…
Die div Tags hab ich so eingefügt:
ich habs vor allen elementen hin, die ich nicht drucken will. ich hab auch probiert vor und nach dem form tag, dann sollte er ja gar nix drucken, druckt aber auch alles.
Was mach ich falsch???
Wo definiere ich außerdem die Seitengröße, es wird die rechte Seite bei mir immer abgeschnitten.

bitte um Eure Hilfe,
lg Andrea

meine PersonalPrint.css sieht so aus:
body
{
background-color: #66ffff;
margin: 0;
padding: 0;
font: 12pt Garamond, Palatino, „Times New Roman“, Times, serif;
color: black;
background: transparent;
width: auto;

}

nichtDrucken
{
visibility:hidden;
display: none;
}

und mein head im html so:

PersonalEdition

Hallo Andrea,

das ist der inhalt
das div wieder zumachen!

Was mach ich falsch???

siehe oben: divs geschlossen?

meine PersonalPrint.css sieht so aus:

Hast du auch eine PersonalWebsite.css?

Die Klasse muss in beiden definiert sein. Einmal
PersonalPrint.css mit-- visibility:hidden;

und einmal
PersonalWebsite.css mit-- visibility:visible;

Wenn die Klasse nur einmal definiert ist, wird die auch immer verwendet! (habs zwar noch nicht probiert, klingt aber logisch)
Zur Seitebreite:
PersonalWebsite.css mit-- .myWidth {width:100%};
PersonalPrint.css mit-- .myWidth {width:500};

Diese Klasse zB in den Body oder eine Tabelle oder … einbinden, das den zu druckenden Content enthält, Ggfs. in mehrer Tags. Die width:500 must du probieren. Da du die Seitenbreite am Client nicht kennst würde ich von je 2cm ausgehen. Dazu etwas Sicherheit und mal probieren.

Probiers mal aus.

mfg

Dirk