Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 6696|Atsakyti: 5

[Šaltinis] WebView2 (3) Dvikryptis ryšys tarp žiniatinklio ir WinForm programų

[Kopijuoti nuorodą]
Paskelbta 2022-09-27 22:12:31 | | | |
Reikalavimai: Kaip "WebView2" gali atvaizduoti ir rodyti žiniatinklio išteklius vartotojo veiksmams, kaip žiniatinklio sąsaja gali bendrauti su "WinForm" programa? Pavyzdžiui, žiniatinklis skaito aparatūros informaciją per programą, o programa aktyviai atnaujina tinklalapio turinį.

Peržiūra:

[WebView2] (1) Pradinis įvadas į "Microsoft Edge WebView2" technologiją
https://www.itsvse.com/thread-10361-1-1.html

[WebView2] (2) "WinForm" pristato "WebView2", kad būtų rodomas žiniatinklio turinys
https://www.itsvse.com/thread-10362-1-1.html
Pirmiausia pažvelkite į ryšio tarp žiniatinklio ir "WinForm" programos atvaizdus, žiniatinklis siunčia pranešimą programai,Iškvieskite skaičiuotuvo funkciją, kuri atidaro "Windows" sistemąTuo pačiu metu programa taip pat gali sėkmingai gauti pranešimus, siunčiamus į žiniatinklio pusę, kaip parodyta paveikslėlyje žemiau:



Ryšys tarp pagrindinio kompiuterio ir žiniatinklio turinio

Pagrindiniai kompiuteriai ir žiniatinklio turinys gali būti naudojami bendrauti tarpusavyje postMessages, kaip nurodyta toliau:

  • Žiniatinklio turinys valdiklyje "WebView2" gali būti naudojamas norint publikuoti pranešimą pagrindiniam kompiuteriui window.chrome.webview.postMessage. Pagrindinis kompiuteris apdoroja pranešimą su bet kokiu pranešimu, kuris užregistruoja WebMessageReceived pagrindiniame kompiuteryje.
  • Pagrindinis kompiuteris publikuoja pranešimus žiniatinklio turiniui WebView2 valdiklyje CoreWebView2.PostWebMessageAsString naudodamas arba CoreWebView2.PostWebMessageAsJSON. Šiuos pranešimus užfiksuoja apdorojimo programa, pridėta prie window.chrome.webview.addEventListener.


Sukurkite naują "Angular SPA" projektą

Šiame straipsnyje naudojama "Angular 8.2.14", kad būtų sukurtas naujas žiniatinklio projektas, skirtas parodyti ryšį tarp žiniatinklio ir "WinForm" programos.

Kodas yra toks:

Tuo pačiu metu pakeiskite app.component.html ir app.component.ts failus, kad suprastumėte pranešimų siuntimo ir gavimo funkcijas.

app.component.html kodas yra toks:

app.component.ts kodas yra toks:

Vykdykite projektą, kaip parodyta toliau:



WinForm programa

Pagrindinė programa turi pakeisti kodą taip:

Valdiklio "WebView2" modifikavimasŠaltinio atributas yra: http://localhost:4200/Norėdami paleisti programą, kaip parodyta toliau:



Galiausiai pabandykite siųsti pranešimus vienas kitam naudodami žiniatinklio ir "WinForm" programas ir pamatysite, kad abi šalys gali sėkmingai gauti pranešimus, kaip parodyta šiame paveikslėlyje:



(Pabaiga)





Ankstesnis:【Našumo optimizavimas】 Išankstinis prisijungimas, DNS išankstinis paėmimas ir išankstinio įkėlimo funkcijos priekinėje dalyje
Kitą:[WebView2] (4) Web ir WinForm iškvietimo funkcijos metodai vienas kitam
Paskelbta 2022-09-28 08:55:45 |
Jis turi pasikliauti EDG kaip galvos skausmu
 Savininkas| Paskelbta 2022-09-28 19:26:50 |
Zmoli775 Publikuota: 2022-9-28 08:55
Jis turi pasikliauti EDG kaip galvos skausmu

Ne, bet reikia įdiegti "webview2" vykdymo laiką
Paskelbta 2022-10-08 15:06:24 |
Išmokite mokytis
Paskelbta 2023-03-31 13:32:46 |
Win7 atrodo, kad neveikia, aš perskaičiau "Microsoft" dokumentacija sako, kad ji nepalaiko?
 Savininkas| Paskelbta 2025-01-07 13:29:35 |
tame pačiame procese. NET ir JavaScript.

Hipersaito prisijungimas matomas.
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com