打印对话框中的页面方向不会保留设置

时间:2012-09-07 16:05:48

标签: c# .net vb.net winforms

我正在进行VB 3.0到.Net转换项目,该项目已经开展了一些打印活动。

现在为用户提供了一个打印设置对话框,用于设置打印机的页面方向和其他设置。

这里的问题是,当从.net printdialog设置时,页面方向似乎总是在应用程序关闭并再次打开时重置。 换句话说,用户打开应用程序,将打印方向从纵向设置为横向,执行一些打印并关闭应用程序。现在当打开应用程序时,打印方向再次是人像 !!(当用户希望它是风景时)。

在vb 3.0中,使用了带有一些标志的commondialog,它运行良好。

请有人指导。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我不确定VB3,但你确定它没有在某处保存该设置吗?

您可以在代码中设置打印方向。

PrintDialog pDialog = new PrintDialog();
pDialog.PrintTicket.PageOrientation = PageOrientation.Lanscape;

如果用户更改了打印对话框上的方向,您也应该能够捕获,这样您就可以保存他们选择的选项。

pDialog.PrintTicket.PropertyChanged += new PropertyChangedEventHandler(PrintPropertyChanged);

private void PrintPropertyChanged(object sender, EventArgs e){
    PageOrientation SelectedPageOrientation = pDialog.PrintTicket.PageOrientation;
    //save the orientation, or save the entire PrintTicket if you want.
}

(我没有对此进行测试,但应该非常接近。)