C# C中的PrintForm控件出现问题#

C# C中的PrintForm控件出现问题#,c#,printing,visual-c#-express-2010,C#,Printing,Visual C# Express 2010,我用过这个: Margins margins = new Margins(5, 5, 5, 5); printForm1.PrinterSettings.DefaultPageSettings.Margins = margins; printForm1.Print(); 但出于某种原因,打印的表单向左对齐,因此我对其进行了编辑并使用以下代码: Margins margins = new Margins(10, 5, 10, 5); prin

我用过这个:

Margins margins = new Margins(5, 5, 5, 5); 
        printForm1.PrinterSettings.DefaultPageSettings.Margins = margins;
        printForm1.Print(); 
但出于某种原因,打印的表单向左对齐,因此我对其进行了编辑并使用以下代码:

Margins margins = new Margins(10, 5, 10, 5); 
        printForm1.PrinterSettings.DefaultPageSettings.Margins = margins;
        printForm1.Print(); 

出于某种原因,这并没有将表单移到纸上或使其居中。如何解决此问题?

PrintForm类是一个简单的Microsoft.VisualBasic.PowerPacks功能,用于打印表单内容,我认为它不允许您更改页边距或其他打印选项。如果您想自定义打印,最好使用BitBlt win32函数,就像这里建议的那样:,或者如果您需要打印某些特定元素,而不是整个表单,您可以使用本文提供的代码