2011-06-03 1 views
0

J'imprime un fichier HTML en utilisant le contrôle WebBrowser, mais je souhaite le forcer à imprimer en mode paysage. Je pensais que les éléments suivants pourraient faire l'affaire mais il n'a pasDéfinition de l'imprimante en mode paysage pour le contrôle WebBrowser

Dim ps As New System.Drawing.Printing.PrinterSettings 
ps.DefaultPageSettings.Landscape = True 
WebBrowser1.ShowPrintDialog() 

Est-il possible de faire ce qui ne recourt pas aux API SetPrinter?

Répondre

1

Ceci n'est pas possible. Alors que l'utilisateur est capable de définir les paramètres de l'imprimante (et même de sélectionner une imprimante différente) à l'aide de l'interface utilisateur, cela n'est pas possible par programmation.

Certains «hacks» existent où les utilisateurs définissent directement des valeurs dans le registre (pour les clés d'Internet Explorer), mais les erreurs peuvent être problématiques.

Reportez-vous à l'article suivant de la base de connaissances Microsoft: http://support.microsoft.com/kb/313723 également un problème de connexion à ce sujet: https://connect.microsoft.com/VisualStudio/feedback/details/678232 Et une autre question StackOverflow concernant: How do I programatically change printer settings with the WebBrowser control?