The easiest way to do, according to me, is to use a panel and put the controls(which you want to print) inside it. Use a button(outside the panel) like this
<asp:Button ID="Button2" runat="server" Text="Print"
OnClientClick = "return PrintPanel();" Enabled="False"/>
It has a javascript function OnClientClick which will do the printing job.
The javascript function for this will be
<script type = "text/javascript">
function PrintPanel() {
var panel = document.getElementById("<%=Panel1.ClientID %>");
var printWindow = window.open('', '', 'height=400,width=800');
printWindow.document.write(panel.innerHTML);
printWindow.document.close();
setTimeout(function () {
printWindow.print();
}, 500);
return false;
}
</script>
You may change it as per your requirement.
Hope this helps.. Happy Coding! :)