Prasības: Kā WebView2 var atveidot un parādīt tīmekļa resursus lietotāja darbībām, kā tīmekļa saskarne var sazināties ar WinForm lietojumprogrammu? Piemēram, tīmeklis lasa aparatūras informāciju, izmantojot lietojumprogrammu, un lietojumprogramma aktīvi atsvaidzina tīmekļa lapas saturu.
Pārskats:
Vispirms apskatiet saziņas atveidojumus starp tīmekli un WinForm lietojumprogrammu, tīmeklis nosūta ziņojumu lietojumprogrammai,Izsauciet kalkulatora funkciju, kas atver Windows sistēmuTajā pašā laikā lietojumprogramma var arī veiksmīgi saņemt ziņojumus, kas nosūtīti uz tīmekļa pusi, kā parādīts zemāk redzamajā attēlā:
Saziņa starp uzņēmēju un tīmekļa saturu
Resursdatorus un tīmekļa saturu var izmantot, lai sazinātos savā starpā postMessages, šādi:
- WebView2 vadīklas tīmekļa saturu var izmantot, lai publicētu ziņojumu resursdatoram vietnē window.chrome.webview.postMessage. Resursdators apstrādā ziņojumu ar jebkuru ziņojumu, kas reģistrē WebMessageReceived resursdatorā.
- Resursdators publicē ziņojumus Web saturā WebView2 vadīklā CoreWebView2.PostWebMessageAsString, izmantojot vai CoreWebView2.PostWebMessageAsJSON. Šos ziņojumus tver apdarinātājs, kas pievienots window.chrome.webview.addEventListener.
Izveidojiet jaunu Angular SPA projektu
Šajā rakstā tiek izmantota Angular 8.2.14, lai izveidotu jaunu tīmekļa projektu, lai demonstrētu saziņu starp tīmekli un WinForm lietojumprogrammu.
Kods ir šāds:
Tajā pašā laikā modificējiet app.component.html un app.component.ts failus, lai realizētu ziņojumu sūtīšanas un saņemšanas funkcijas.
app.component.html kods ir šāds:
app.component.ts kods ir šāds:
Palaidiet projektu, kā parādīts tālāk:
WinForm pieteikums
Resurslietojumprogrammai kods ir jāmaina šādi:
WebView2 vadīklas modificēšanaavota atribūts ir: http://localhost:4200/Lai palaistu lietojumprogrammu, kā parādīts tālāk:
Visbeidzot, mēģiniet sūtīt ziņojumus viens otram, izmantojot Web un WinForm lietojumprogrammas, un jūs varat redzēt, ka abas puses var veiksmīgi saņemt ziņojumus, kā parādīts šajā attēlā:
(Beigas)
|