Самое простое решение - использовать CSS
для отображения и скрытия различных элементов в зависимости от того, предназначены они для экрана или для печати. Включите все элементы в вывод страницы (как печать, так и экран) и используйте CSS
для управления ими.
Вот очень простой пример - допустим, у вас есть сводный текст, который должен быть включен только в версию для печати, и некоторые кнопки, которые должны быть включены только в экранную версию.
Markup:
<p class="printOnly">
Here is my summary text.
</p>
<asp:button ID="btnSomeButton" runat="server" Text="Some Server Button" CssClass="screenOnly" />
CSS:
@media print {
.screenOnly { display: none; }
}
@media screen {
.printOnly { display: none; }
}
В итоге любой элемент, отмеченный CSS
классом screenOnly
, будет скрыт от содержимого печати, а любой элемент, отмеченный CSS
классом printOnly
, будет скрыт от экранной версии.
Оттуда просто есть кнопка печати или ссылка на странице где-то с:
<a href="#" onclick="window.print();" class="screenOnly">Print Page</a>