Exigences : Comment WebView2 peut-il afficher et afficher des ressources web pour les actions utilisateur, comment l’interface web peut-elle communiquer avec l’application WinForm ? Par exemple, le web lit les informations matérielles via l’application, et celle-ci actualise activement le contenu de la page web.
Révision:
D’abord, regardez les rendus de la communication entre le web et l’application WinForm : le web envoie un message à l’application,Invoquer la fonction Calculatrice qui ouvre le système WindowsEn même temps, l’application peut également recevoir avec succès les messages envoyés côté web, comme montré dans la figure ci-dessous :
Communication entre l’hébergeur et le contenu web
Les hébergeurs et le contenu web peuvent être utilisés pour communiquer entre eux dans postMessages, comme suit :
- Le contenu web dans le contrôle WebView2 peut être utilisé pour publier un message à l’hôte dans window.chrome.webview.postMessage. L’hôte traite le message avec n’importe quel message qui enregistre WebMessageReceived sur l’hôte.
- L’hôte publie les messages vers le contenu Web dans le contrôle WebView2 CoreWebView2.PostWebMessageAsString en utilisant ou CoreWebView2.PostWebMessageAsJSON. Ces messages sont capturés par le gestionnaire ajouté à window.chrome.webview.addEventListener.
Créer un nouveau projet Angular SPA
Cet article utilise Angular 8.2.14 pour créer un nouveau projet web afin de démontrer la communication entre le web et l’application WinForm.
Le code est le suivant :
En même temps, modifiez les fichiers app.component.html et app.component.ts pour réaliser les fonctions d’envoi et de réception des messages.
app.component.html code est le suivant :
app.component.ts code est le suivant :
Faites avancer le projet comme indiqué ci-dessous :
Application WinForm
L’application hôte doit modifier le code comme suit :
Modifier le contrôle WebView2Attribut source : http://localhost:4200/pour lancer l’application, comme indiqué ci-dessous :
Enfin, essayez de vous envoyer des messages via les applications Web et WinForm, et vous verrez que les deux parties peuvent recevoir les messages avec succès, comme montré dans la figure suivante :
(Fin)
|