今天跟人討論如何列印整個窗體,最原始的思路是:
new bitmap ;
this.drawbitmap(bitmap,*);
用printdoucument控制項中 onprint 事件的 e.graphics.drawimage(bitmap,*,*,*,*);
此方法可以實現,但不夠完美。經過查資料發現 c# 可呼叫vb.net中的visual basic power pack 中的printer控制項來實現,且方法簡單優雅。
printform.printaction = system.**.printtoprinter;
printform.print(this,microsoft.**.clientareaonlu); //clientareaonly表示只列印窗體,不包括邊欄
this.refresh();
另外這個小工具包中還有幾個比較有用的控制項,大家可以試試看!
假如裝vs時安裝了vb.net,則visual basic .net power pack 可在c#工具中看到,若沒有,也可自己安裝。
參考:
c 列印邊距2
using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using system.window...
C 實現窗體控制項隨窗體大小改變 包括字型大小
private float x private float y private void settag control cons private void setcontrols float newx,float newy,control cons float a convert.tosingle ...
C 實現窗體控制項隨窗體大小改變 包括字型大小
private float x private float y private void settag control cons foreach control con in cons.controls private void setcontrols float newx,float newy,c...