Posted 25 May 2025, 3:15 pm EST
We have code that displays a custom form where the user can select a printer and. configure papersize and orientation. On OK click, a C1FlexReport is rendered and sent to the selected printer.
The user can also open the detailed printer config dialog for the selected printer (which is done by calling “DocumentProperties” from “winspool.drv”). The result of this dialog is a DEVMODE structure that is set to the “System.Drawing.Printing.PrinterSettings” by calling “SetHdevmode”.
We forwarded those setting to C1FlexReport with this code:
System.Drawing.Printing.PrinterSetting myPrinterSettings = ...;
System.Drawing.Printing.PageSetting myPageSettings = ...;
C1FlexReport = ...;
report.DefaultPrintOptions.PageSettings = myPageSettings;
report.DefaultPrintOptions.PrinterSettings = myPrinterSettings;
report.Render();
report.Print();
With .708, “C1PrintOptions.PageSettings” was changed to type “C1PageSettings”, and the “PrinterSettings” property was removed.
Now, our code just prints to the default printer - I cannot even specify the target printer, not even talking about custom printer settings from DEVMODE.
Is there code to fulfill my requirement to print using preconfigured PrinterSettings? Or was this feature accidentally removed? If yes: please bring it back - this is a blocker for migration to .708 or newer.
Hope you don’t request to build a sample - I would have to extract a lot of code for all this ;-).
Best regards
Wolfgang