我有這個ASP.NET頁面,我想打印。我現在正在使用的是使用OnClientClick
,然後從那裏調用功能PrintThePage()
,該功能除了打電話給Window.Print()
。當我這樣做時,用戶會看到「打印」對話框,她可以在其中選擇打印機(並設置它的屬性和其他屬性),然後打印頁面。打印沒有打印對話框的頁面?
問題是,我想打印的頁面,而不顯示打印對話框,使用默認打印機。以下是我已經試過:
protected void Page_Load(object sender, EventArgs e)
{
System.Drawing.Printing.PrinterSettings ps =
new System.Drawing.Printing.PrinterSettings();
ps.PrintFileName = Path.GetFileName(Request.Url.LocalPath);
System.Drawing.Printing.PrintDocument pd =
new System.Drawing.Printing.PrintDocument();
pd.PrinterSettings = ps;
pd.Print();
}
我的默認打印機是OneNote
(微軟發送給一個注)。 問題:頁面打印時,僅生成空白頁面。
我第一次嘗試到我的默認打印機設置爲doPdf
。如果這不起作用,我然後試圖使用我真正的惠普打印機。但我仍然收到相同的結果。該頁面未顯示打印對話框...該問題已消失。但問題是爲什麼頁面不打印?爲什麼我得到一個空白/空/納達頁面?我的代碼有問題嗎?或者是我的打印機故障?再次,一個問題已經消失;我不再得到Print Dialog Box
。我只是沒有得到一個打印頁面,只是一個空白頁面。
誰能告訴我發生了什麼事?我能做些什麼來實現我的目標? (我希望我已經讓自己清楚了!)。
@exacerbatedexpert: 我知道,但是當這個頁面在客戶端打開時,'Request.Url'仍然會引用當前頁面的url,afaik'.LocalPath'應該給它的本地副本,我調用'Path.GetFileName'它應該給我我想要的,並且應該能夠打印頁面。 – Razort4x