Požadavky: Jak může WebView2 vykreslovat a zobrazovat webové zdroje pro uživatelské akce, jak může webové rozhraní komunikovat s aplikací WinForm? Například web čte hardwarové informace prostřednictvím aplikace a aplikace aktivně obnovuje obsah webové stránky.
Přezkoumání:
Nejprve se podívejte na zobrazení komunikace mezi webem a aplikací WinForm, web posílá aplikaci zprávu,Spustíte funkci Kalkulačky, která otevře systém WindowsSoučasně může aplikace úspěšně přijímat zprávy zaslané na webovou stranu, jak je znázorněno na obrázku níže:
Komunikace mezi hostitelem a webovým obsahem
Hostitelé a webový obsah mohou být použity ke vzájemné komunikaci v postMessages, a to následovně:
- Webový obsah v ovládání WebView2 lze použít k publikování zprávy hostiteli ve windows.chrome.webview.postMessage. Hostitel zpracovává zprávu s jakoukoli zprávou, která na hostiteli registruje WebMessagePřijaté.
- Hostitel publikuje zprávy k webovému obsahu v ovládání WebView2 CoreWebView2.PostWebMessageAsString pomocí nebo CoreWebView2.PostWebMessageAsJSON. Tyto zprávy jsou zachyceny handlerem přidaným do windows.chrome.webview.addEventListener.
Vytvořte nový projekt Angular SPA
Tento článek využívá Angular 8.2.14 k vytvoření nového webového projektu, který demonstruje komunikaci mezi webem a aplikací WinForm.
Kód je následující:
Současně upravit soubory app.component.html a app.component.ts tak, aby plnily funkce odesílání a přijímání zpráv.
app.component.html kód je následující:
app.component.ts kód je následující:
Proveďte projekt tak, jak je uvedeno níže:
Aplikace WinForm
Hostitelská aplikace musí kód upravit následovně:
Upravit ovládání WebView2Zdrojový atribut je: http://localhost:4200/Pro spuštění aplikace, jak je uvedeno níže:
Nakonec zkuste posílat zprávy mezi sebou přes webové a WinForm aplikace a uvidíte, že obě strany mohou zprávy úspěšně přijímat, jak ukazuje následující obrázek:
(Konec)
|