7
votes

Supprimer la frontière du contrôle WebBrowser

J'ai un contrôle WebBrowser assis sur un formulaire qui a une frontière irritante de 2px insectifie autour de lui. Il provoque que mon contenu soit coupé par 4 px à droite et en bas, et je ne peux pas comprendre comment s'en débarrasser. Le contrôle lui-même n'a pas de propriétés de Borderstyle - comment enlève-t-on la frontière?

Voir la zone rouge dans le tir à l'écran:

Faites-le arrêter! http://img229.imageshack.us/img229/8342/badbadwebwebbrowser.gif

Je veux que le WebBrowser ressemble à la zone bleue - c'est-à-dire pour remplir le formulaire et être affleurant sur les bords du formulaire.


0 commentaires

4 Réponses :


4
votes

IE dessine que comme faisant partie du style par défaut sur la balise du corps. Définir bordure: 0px sur l'élément du corps et ça s'en va.

Heureusement, c'est S'étant à IE9 .


4 commentaires

Bon appel. J'avais réinitialisé les marges et le rembourrage, mais je n'ai pas supprimé les frontières pouvant être sur les éléments HTML ou Corps. Merci!


Pouvez-vous ne pas ajouter CSS à la page ou une approche basée sur CSS ne fonctionne-t-elle pas? Vous pourrez peut-être ajouter de manière programmable CSS pour y accomplir votre candidature.


Cela ne fonctionne pas sur MSIE 9 si vous avez un et utilisez un navigateur intégré.


Eh bien, cette réponse a 7 ans.



-1
votes

Je ne peux pas reproduire l'apparence que vous parlez. Mon code dans le form1.designer.cs est le suivant: xxx

et le Webcontrol est affiché sans bordure ... J'utilise VS 2008 SP1 / Windows 7.

Peut-être devriez-vous essayer d'ajouter la commande à l'intérieur d'un conteneur, par exemple un panneau.


2 commentaires

Voir votre formulaire sur XP et vous verrez exactement comme dans la question. Win7 ne montre pas les frontières.


@Hasan: Cela n'a rien à voir avec la version Windows. Cela dépend de la version du navigateur!



3
votes

Contrôle WebBrowser hérite du style d'affichage de la classe de contrôle. Si vous souhaitez contrôler le style de contrôle de la frontière, vous pouvez utiliser le code comme celui-ci, par ex. dans form.designer.cs: xxx

Maintenant, vous pouvez modifier le code généré dans la classe de formulaire. xxx

et réécrire la création d'un élément WebBrowser dans InitializEcomponce de forme, comme celui-ci: xxx

Donc, maintenant xxx

supprimera toutes les bordures du contrôle WebBrowser.


2 commentaires

Merci pour l'échantillon de code. À son arrivée, mon vrai problème était avec le document que je chargeais dans le contrôle et non le contrôle lui-même.


Cette réponse est complètement fausse. La frontière dont nous parlons ici est à l'intérieur du contrôle du navigateur non à l'extérieur.



3
votes

J'ai résolu le même problème en ajoutant frontière: aucun; attribut style dans l'élément html . XXX P> J'ai essayé d'abord Pour l'ajouter au corps corps , mais cela ne fonctionnait pas, mais cela fonctionne sur root html élément "

la version IE utilisée sur Windows XP Pour Objet WebBrowser - Je pense que la version 6 - interprète l'élément HTML racine comme ayant une bordure par défaut. Si vous avez un contrôle direct sur la page Web affichée dans le WebBrowser, vous pouvez ajouter un attribut de style directement à la source HTML de la page - comme je l'ai fait -, sinon, il devrait y avoir un moyen de modifier le code HTML à l'intérieur du WebBrowser de manière programmatique. sur le côté de votre application.


1 commentaires

Cela ne fonctionne pas sur IE 9. Le seul moyen de supprimer cette frontière stupide consiste à éliminer le