OVH Cloud OVH Cloud

webbrowser -> innerHTML

5 réponses
Avatar
free.news.fr
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un fichier
HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la les
ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH

5 réponses

Avatar
Picalausa François
Hello,

Voir du côté de document.write ou document.boyd.outerHTML.
Si ton document est inclu dans une ressource de l'application, tu peux aussi
directement utiliser le protocole res.
Pour ce qui est des alink, vlink, ... tu peux plus simplement utiliser
directement les attributs de body.
Tu peux aussi définir un style qui lui sera plus probablement pris en
compte.

Voir à ce sujet:
http://msdn.microsoft.com/workshop/networking/predefined/res.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/body.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/style.asp

A noter qu'il est tout à fait possible d'avoir des pages maitre dans un res
avec les div qui vont bien pour indiquer les sections modifiables du code.
Il suffit alors de charge la page maitre, de localiser la balise div et
d'utiliser son innerHTML

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bbdd98$0$21782$
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un fichier
HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la les
ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH



Avatar
free.news.fr
Merci pour la réponse.

Ceci étant, cela ne m'explique pas pourquoi les balises inclusent dans le
<body> ne sont pas correctement interprétées, alors que les autres sont OK.

<body bgcolor='#FF0000' ...> fonctionne avec Navigate, mais pas avec
Document... ... innerHTML

J'essaie de trouver la solution parmis la réponse

Merci



"Picalausa François" a écrit dans le message de news:
%
Hello,

Voir du côté de document.write ou document.boyd.outerHTML.
Si ton document est inclu dans une ressource de l'application, tu peux
aussi directement utiliser le protocole res.
Pour ce qui est des alink, vlink, ... tu peux plus simplement utiliser
directement les attributs de body.
Tu peux aussi définir un style qui lui sera plus probablement pris en
compte.

Voir à ce sujet:
http://msdn.microsoft.com/workshop/networking/predefined/res.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/body.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/style.asp

A noter qu'il est tout à fait possible d'avoir des pages maitre dans un
res avec les div qui vont bien pour indiquer les sections modifiables du
code. Il suffit alors de charge la page maitre, de localiser la balise div
et d'utiliser son innerHTML

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bbdd98$0$21782$
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un fichier
HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la
les ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH







Avatar
Picalausa François
Hello,

innertHTML, comme son nom l'indique, désigne l'HTML contenu *dans* l'élément
désigné (en l'occurrence body).
Donc ton code demande d'écrire quelquechose comme

<body>
<body blah blah bah>
content
</body>
</body>

D'où l'erreur. C'est pourquoi outerHTML *devrait* (non testé) mieux
fonctionner, et, qui plus est, writeline (de l'objet document cette fois)
permet aussi d'écrire le body, si mes souvenirs sont exacts.

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bd16d2$0$11737$
Merci pour la réponse.

Ceci étant, cela ne m'explique pas pourquoi les balises inclusent dans le
<body> ne sont pas correctement interprétées, alors que les autres sont
OK.

<body bgcolor='#FF0000' ...> fonctionne avec Navigate, mais pas avec
Document... ... innerHTML

J'essaie de trouver la solution parmis la réponse

Merci



"Picalausa François" a écrit dans le message de
news: %
Hello,

Voir du côté de document.write ou document.boyd.outerHTML.
Si ton document est inclu dans une ressource de l'application, tu peux
aussi directement utiliser le protocole res.
Pour ce qui est des alink, vlink, ... tu peux plus simplement utiliser
directement les attributs de body.
Tu peux aussi définir un style qui lui sera plus probablement pris en
compte.

Voir à ce sujet:
http://msdn.microsoft.com/workshop/networking/predefined/res.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/body.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/style.asp

A noter qu'il est tout à fait possible d'avoir des pages maitre dans un
res avec les div qui vont bien pour indiquer les sections modifiables du
code. Il suffit alors de charge la page maitre, de localiser la balise
div et d'utiliser son innerHTML

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bbdd98$0$21782$
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un fichier
HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la
les ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH











Avatar
free.news.fr
Bsr,

J'ai essayé la méthode suivante :
webbrowser1.Document.Write m_strHTML --> Affichage OK

mais dès que je tente une opération du style :
webbrowser1.Document.Body.doScroll ("down")
Alors la, méga plantage de VB

mais si j'utiliser innerHTML --> tout fonctionne bien sauf les balises dans
le <body ... > qui ne sont pas interprétées

Le contrôle webbrowser est desespérant à utiliser !

Existe une méthode fiable et stable de construire une page sans passer par
un fichier et de pour gérer les évènements sans problèmes ? Pour rappel, si
je stocke le code HTML dans un fichier et que j'utilise .Navigate, pas de
problème !

Merci d'avance :-)

FH

"Picalausa François" a écrit dans le message de news:
%
Hello,

Voir du côté de document.write ou document.boyd.outerHTML.
Si ton document est inclu dans une ressource de l'application, tu peux
aussi directement utiliser le protocole res.
Pour ce qui est des alink, vlink, ... tu peux plus simplement utiliser
directement les attributs de body.
Tu peux aussi définir un style qui lui sera plus probablement pris en
compte.

Voir à ce sujet:
http://msdn.microsoft.com/workshop/networking/predefined/res.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/body.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/style.asp

A noter qu'il est tout à fait possible d'avoir des pages maitre dans un
res avec les div qui vont bien pour indiquer les sections modifiables du
code. Il suffit alors de charge la page maitre, de localiser la balise div
et d'utiliser son innerHTML

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bbdd98$0$21782$
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un fichier
HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la
les ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH







Avatar
free.news.fr
Merci, voila une réponse qu'elle est précise ;-)

Cela explique la différence de comportement entre le Navigate et le
innerHTML.


"Picalausa François" a écrit dans le message de news:

Hello,

innertHTML, comme son nom l'indique, désigne l'HTML contenu *dans*
l'élément désigné (en l'occurrence body).
Donc ton code demande d'écrire quelquechose comme

<body>
<body blah blah bah>
content
</body>
</body>

D'où l'erreur. C'est pourquoi outerHTML *devrait* (non testé) mieux
fonctionner, et, qui plus est, writeline (de l'objet document cette fois)
permet aussi d'écrire le body, si mes souvenirs sont exacts.

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bd16d2$0$11737$
Merci pour la réponse.

Ceci étant, cela ne m'explique pas pourquoi les balises inclusent dans le
<body> ne sont pas correctement interprétées, alors que les autres sont
OK.

<body bgcolor='#FF0000' ...> fonctionne avec Navigate, mais pas avec
Document... ... innerHTML

J'essaie de trouver la solution parmis la réponse

Merci



"Picalausa François" a écrit dans le message de
news: %
Hello,

Voir du côté de document.write ou document.boyd.outerHTML.
Si ton document est inclu dans une ressource de l'application, tu peux
aussi directement utiliser le protocole res.
Pour ce qui est des alink, vlink, ... tu peux plus simplement utiliser
directement les attributs de body.
Tu peux aussi définir un style qui lui sera plus probablement pris en
compte.

Voir à ce sujet:
http://msdn.microsoft.com/workshop/networking/predefined/res.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/body.asp
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/style.asp

A noter qu'il est tout à fait possible d'avoir des pages maitre dans un
res avec les div qui vont bien pour indiquer les sections modifiables du
code. Il suffit alors de charge la page maitre, de localiser la balise
div et d'utiliser son innerHTML

--
Picalausa François

"free.news.fr" a écrit dans le message de news:
44bbdd98$0$21782$
Bsr,

J'utilise le controle webbrowser.

Si j'utilise la méthode "Navigate", pas de problème, l'affichage est OK
(pour cette méthode le code source de la page est généré dans un
fichier HTML)

Si j'utilise "webBrowser.Document.body.innerHTML = m_strHTML",alors la
les ennuis commencent :
tous les tags situé dans le <body ...> ne sont pas pris en compte
ex: margin, link, alink, vlink ...

Il s'agit bien dans les 2 cas du même code généré.

QQ a-t-il une idée ?

Merci d'avance
FH