2013-06-19 12 views
5

Chcę dodać formularz do kanału na moim panelu po każdej pozycji, którą wydrukuję, aby umożliwić wydrukowanie każdej pozycji na jej własnej stronie.Czy jest możliwe dodanie pliku formularza do panelu asp.net?

Czy to możliwe?

Na przykład mogę dodać podział wiersza do mojego panelu, ale nie wiem, jak dodać formularz.

przykład:

Panel1.Controls.Add(new LiteralControl("<br />")); 

pomoc byłaby cenione.

Dziękuję

Odpowiedz

2

Użyj page-break-after css style:

Panel1.Controls.Add(new LiteralControl("<br style='page-break-after:always;' />")); 

I oglądać na nowsze break-after css style go zastąpić (nie jest dobrze obsługiwany jeszcze):

Panel1.Controls.Add(new LiteralControl("<br style='break-after:page;' />")); 

Zauważ, że te stosuje się do skrzynki, więc za pomocą <br/> może nie być najlepszym wyborem. An <hr/> może działać lepiej.

-1

form feed postać jest "\f".

Zauważ, że HTML jest spacja agnostykiem, więc przeglądarek uczyni to jako po prostu normalnym znak spacji. Ale jeśli naprawdę potrzebujesz pliku danych, to jak to zrobić.

+0

Próbowałem „\ f” nie wydaje się, aby praca. – hmakled

1

Możesz użyć css, aby uzyskać pożądane zachowanie.

Istnieją atrybuty css page-break, które nakazują przeglądarce wstawianie podziałów strony przed lub po elemencie HTML.

Idealnie, nie powinny one wpływać na wygląd strony podczas wyświetlania w przeglądarce, więc należy użyć zapytań o media, coś like:

@media all { 
    .page-break { display: none; } 
} 

@media print { 
    .page-break { display: block; page-break-before: always; } 
} 
+1

Przeglądarki ignorują już podziały stron na ekranie, więc nie jest to obecnie konieczne (z wyjątkiem może wyświetlania: brak względem wszystkich). Jednak nowe 'break-after' również obsługuje łamanie kolumn, co może wpływać na ekrany przeglądarek, więc dobrze jest zacząć myśleć w tych kategoriach. –

+0

's/all/block' :( –

Powiązane problemy