2009-11-30 65 views
0

我在我們的智能客戶端軟件工廠應用程序中打印某些表單時遇到了一些麻煩。用DeckWorkspace打印c#表格

我們有一個主表單,其中有一個表頭顯示一些關鍵信息,並在列表框和DeckWorkspace下。該列表包含一組類別,當選擇一個時,將單獨的表格加載到DeckWorkspace中,以顯示更詳細的信息。

當用戶選擇打印按鈕時,他們可以選擇他們想要打印哪個類別。

要打印子表單我發現我需要打開每個子表單,然後生成需要打印的圖像,然後從這些圖像構建頁面。

我遇到的問題是,在大多數情況下,表單將在文本框和其他控件中沒有任何數據的情況下打印。我發現如果在選擇打印之前手動打開子窗體,那麼將打印數據。打印前我試過打電話Application.DoEvents(),但這沒有奏效。

有沒有更好的方法來做到這一點?如果我使用CrystalReports會更好嗎?

回答

0

的原因可能是,

您已經使用窗體的Load事件上的控件加載值,當您創建窗體的新實例,不會觸發,唯一的構造呼籲。

捕捉圖像之前使用show方法,可能會解決問題...