Zahteve: Kako lahko WebView2 upodablja in prikazuje spletne vire za uporabniška dejanja, kako lahko spletni vmesnik komunicira z aplikacijo WinForm? Na primer, splet bere strojne informacije prek aplikacije, aplikacija pa aktivno osvežuje vsebino spletne strani.
Pregled:
Najprej si oglejte upodobitve komunikacije med spletom in aplikacijo WinForm, splet pošlje sporočilo aplikaciji,Sprožite funkcijo Kalkulator, ki odpre Windows sistemHkrati lahko aplikacija uspešno sprejema sporočila, poslana na spletno stran, kot je prikazano na spodnji sliki:
Komunikacija med gostiteljem in spletnimi vsebinami
Gostitelji in spletna vsebina se lahko uporabljajo za medsebojno komunikacijo v postMessages, kot sledi:
- Spletna vsebina v kontrolniku WebView2 se lahko uporabi za objavo sporočila gostitelju v windows.chrome.webview.postMessage. Gostitelj obdeluje sporočilo skupaj z vsakim sporočilom, ki registrira WebMessageReceived na gostitelju.
- Gostitelj objavlja sporočila za spletno vsebino v nadzoru WebView2 CoreWebView2.PostWebMessageAsString z uporabo ali CoreWebView2.PostWebMessageAsJSON. Ta sporočila zajame handler, dodan v windows.chrome.webview.addEventListener.
Ustvarite nov projekt Angular SPA
Ta članek uporablja Angular 8.2.14 za ustvarjanje novega spletnega projekta, ki prikazuje komunikacijo med spletom in aplikacijo WinForm.
Koda je naslednja:
Hkrati spreminjajte app.component.html in app.component.ts datoteke, da uresničite funkcije pošiljanja in prejemanja sporočil.
app.component.html koda je naslednja:
app.component.ts koda je naslednja:
Izvedite projekt, kot je prikazano spodaj:
Aplikacija WinForm
Gostiteljska aplikacija mora kodo spremeniti na naslednji način:
Spremenite nadzor WebView2Izvorni atribut je: http://localhost:4200/Za zagon aplikacije, kot je prikazano spodaj:
Na koncu poskusite pošiljati sporočila drug drugemu prek spletnih in WinForm aplikacij, in videli boste, da lahko obe strani uspešno prejmeta sporočila, kot je prikazano na naslednji sliki:
(Konec)
|