Problema con PrinterSetup

Buongiorno ho la necessità di settare i margini di stampa a 0 ma se leggo la variabile “PrinterSetup” senza aprire la finestra pagesetupdialog mi vengono ritornati solo i primi quattro valori e cioè:

DoNotAlterThis=SetupString.2
ActualHorizontalResolution=72
ActualVerticalResolution=72
MaxHorizontalResolution=72
MaxVerticalResolution=72

se invece apro pagesetupdialog mi ritornano tutti i valori cioè:

DoNotAlterThis=SetupString.2
ActualHorizontalResolution=72
ActualVerticalResolution=72
MaxHorizontalResolution=72
MaxVerticalResolution=72
MarginLeft=0
MarginRight=0
MarginTop=0
MarginBottom=0
MinMarginLeft=0
MinMarginRight=0
MinMarginTop=0
MinMarginBottom=0
PageSetupFlags=8
DevModeStructureSizePS=492
eccetera

vorrei sapere se esiste la possibilità di settare le variabili MarginLeft, MarginRight, MarginTop e MarginBottom in qualche altro modo.
Ho notato inoltre che se si setta la variabile Landscape = True nel caso di non apertura di pagesetupdialog i margini vengono sempre considerati di 1" quindi taglia una parte della stampa se invece la si setta dalla finestra di dialogo stampa senza tagliare il documento.
Vorrei sapere se qualcuno ha avuto lo stesso problema e come l’ha risolto senza dove aprire pagesetupdialog, grazie.