1. 程式人生 > >WPF安裝打印機驅動後PrintDialog 執行打印事件

WPF安裝打印機驅動後PrintDialog 執行打印事件

splay reg -c rgba dial roc 打印機 pretty highlight

原文:WPF安裝打印機驅動後PrintDialog 執行打印事件

WPF可以很好的利用流文檔來實現打印預覽和PrintDialog 實現打印功能,但是我在這只是寫了一個很簡單的打印功能演示。
PagePrint布局代碼:

d:DesignHeight="350" d:DesignWidth="525" Background="White"
      Title="PagePrint">

    <Canvas x:Name="PrintArea">

        <TextBlock FontSize
="10" FontWeight="Bold" Foreground="Black" Name="Spec" Canvas.Left="165" Canvas.Top="116" Height="13" Width="96"> </TextBlock> <TextBlock FontSize="10" FontWeight="Bold" Foreground="Black" Name="Name" Canvas.Left="165" Canvas.Top
="96" Height="13" Width="96"> </TextBlock> <TextBlock FontSize="10" FontWeight="Bold" Foreground="Black" Name="Mfrs" Canvas.Left="165" Canvas.Top="136" Height="13" Width="96"> </TextBlock> </Canvas>

布局代碼只是很簡單的放了幾個文本框,此PagePrint布局代碼的後臺:

 //定義全局變量用於要打印的名稱,規格以及生廠商
        public static String CName = null;
        public static String CSpec = null;
        public static String CMfrs = null;
        public void Pring()
        {
            String CName = PagePrint.CName;
            String CSpec = PagePrint.CSpec;
            String CMfrs = PagePrint.CMfrs;
            // MessageBox.Show(CName);

            Name.Text = CName;
            Spec.Text = CSpec;
            Mfrs.Text = CMfrs;
            //打印打印區域
            PrintDialog dialog = new PrintDialog();
            dialog.PrintVisual(PrintArea, "Test");

因為我在另一個頁面點擊button按鈕可以實現此打印功能,所以只需要在另一個頁面添加如下代碼:

 //給名稱,規格以及生產商的全局變量賦值用於打印
                    PagePrint.CName = CName;
                    PagePrint.CSpec = Spec;
                    PagePrint.CMfrs = Mfrs;

                    //調用函數打印。。
                    PagePrint PrintprintArea = new PagePrint();
                    PrintprintArea.Pring();

註意:安裝好打印驅動之後要把打印機設置成默認打印機,其次要註意如果打印出來的是空白或者錯位,可能是由於布局文件大小,位置等等的原因。

WPF安裝打印機驅動後PrintDialog 執行打印事件