2010-11-23 40 views
2

我有一個應用程序使用asp .net chartarea在報表上創建圖表。運行時,該圖表在瀏覽器窗口中完美顯示。當我嘗試打印預覽或直接打印時,有時圖表只顯示爲x,看起來它無法找到圖表。對於某些用戶來說,它可以正常工作,而其他用戶則只會顯示x。這是支持的項目,所以我不能改變任何事情。我已經看到了多個pcs,oses和ie瀏覽器版本中的奇怪行爲。圖表區域未在打印預覽中顯示

沒有人有任何想法,我怎麼能解決這個問題?我在哪裏尋找解決打印預覽問題?

+0

你知道圖表是以圖像,Flash還是Silverlight的形式呈現嗎?如果是圖像,是背景圖像還是前景圖像? (背景圖像通常不會打印,儘管這是一個超出您的控制範圍的瀏覽器實現細節)。 – 2010-11-23 13:58:44

+0

它呈現爲圖像,但不是背景圖像。 – czuroski 2010-11-23 14:03:32

回答

3

嘗試編輯你的web.config(在appSettings部分)增加值deleteAfterServicing = false添加到 「ChartImageHandler」 鍵,類似如下:

<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;deleteAfterServicing=false;" /> 

this questionthis page

找到解釋是顯然,動態生成的圖表圖像幾乎在其首次被提供給瀏覽器後立即被刪除,並且對該特定圖表的後續請求將失敗。某些瀏覽器可能會緩存圖像,其他瀏覽器會重新請求打印預覽,但無法獲取它。

上面的web.config鍵應該保留這些圖像,可能會犧牲一些磁盤空間和/或內存。