Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 6696|Απάντηση: 5

[Πηγή] WebView2 (3) Αμφίδρομη επικοινωνία μεταξύ των εφαρμογών Web και WinForm

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 27/9/2022 10:12:31 μ.μ. | | | |
απαιτήσεις: Πώς μπορεί το WebView2 να αποδώσει και να εμφανίσει πόρους web για ενέργειες χρήστη, πώς μπορεί η διεπαφή web να επικοινωνήσει με την εφαρμογή WinForm; Για παράδειγμα, ο ιστός διαβάζει πληροφορίες υλικού μέσω της εφαρμογής και η εφαρμογή ανανεώνει ενεργά το περιεχόμενο της ιστοσελίδας.

Αναθεώρηση:

[WebView2] (1) Αρχική εισαγωγή στην τεχνολογία Microsoft Edge WebView2
https://www.itsvse.com/thread-10361-1-1.html

[WebView2] (2) Το WinForm εισάγει το WebView2 για την εμφάνιση περιεχομένου ιστού
https://www.itsvse.com/thread-10362-1-1.html
Αρχικά, κοιτάξτε τις αποδόσεις της επικοινωνίας μεταξύ του ιστού και της εφαρμογής WinForm, ο ιστός στέλνει ένα μήνυμα στην εφαρμογή,Καλέστε τη λειτουργία Αριθμομηχανή που ανοίγει το σύστημα των WindowsΤαυτόχρονα, η εφαρμογή μπορεί επίσης να λαμβάνει με επιτυχία μηνύματα που αποστέλλονται στην πλευρά του web, όπως φαίνεται στο παρακάτω σχήμα:



Επικοινωνία μεταξύ του κεντρικού υπολογιστή και του περιεχομένου ιστού

Οι κεντρικοί υπολογιστές και το περιεχόμενο ιστού μπορούν να χρησιμοποιηθούν για την επικοινωνία μεταξύ τους στο postMessages, ως εξής:

  • Το περιεχόμενο ιστού στο στοιχείο ελέγχου WebView2 μπορεί να χρησιμοποιηθεί για τη δημοσίευση ενός μηνύματος στον κεντρικό υπολογιστή στο window.chrome.webview.postMessage. Το κεντρικό σύστημα επεξεργάζεται το μήνυμα με οποιοδήποτε μήνυμα που καταχωρεί το WebMessageReceived στο κεντρικό σύστημα.
  • Το κεντρικό σύστημα δημοσιεύει μηνύματα στο περιεχόμενο Web στο στοιχείο ελέγχου WebView2 CoreWebView2.PostWebMessageAsString χρησιμοποιώντας ή CoreWebView2.PostWebMessageAsJSON. Αυτά τα μηνύματα καταγράφονται από το πρόγραμμα χειρισμού που προστίθεται στο window.chrome.webview.addEventListener.


Δημιουργήστε ένα νέο έργο Angular SPA

Αυτό το άρθρο χρησιμοποιεί το Angular 8.2.14 για να δημιουργήσει ένα νέο έργο web για να επιδείξει την επικοινωνία μεταξύ του web και της εφαρμογής WinForm.

Ο κωδικός έχει ως εξής:

Ταυτόχρονα, τροποποιήστε τα αρχεία app.component.html και app.component.ts για να πραγματοποιήσετε τις λειτουργίες αποστολής και λήψης μηνυμάτων.

app.component.html κώδικας έχει ως εξής:

app.component.ts κωδικός έχει ως εξής:

Εκτελέστε το έργο όπως φαίνεται παρακάτω:



Εφαρμογή WinForm

Η εφαρμογή κεντρικού συστήματος πρέπει να τροποποιήσει τον κώδικα ως εξής:

Τροποποίηση του στοιχείου ελέγχου WebView2source είναι: http://localhost:4200/για να εκκινήσετε την εφαρμογή, όπως φαίνεται παρακάτω:



Τέλος, δοκιμάστε να στείλετε μηνύματα μεταξύ τους με τις εφαρμογές Web και WinForm και μπορείτε να δείτε ότι και τα δύο μέρη μπορούν να λάβουν με επιτυχία τα μηνύματα, όπως φαίνεται στην παρακάτω εικόνα:



(Τέλος)





Προηγούμενος:【Βελτιστοποίηση απόδοσης】 Λειτουργίες προσύνδεσης, DNS-Prefetch και προφόρτωσης στο front-end
Επόμενος:[WebView2] (4) Μέθοδοι λειτουργίας κλήσης Web και WinForm μεταξύ τους
Δημοσιεύτηκε στις 28/9/2022 8:55:45 π.μ. |
Πρέπει να βασίζεται στο EDG ως πονοκέφαλο
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 28/9/2022 7:26:50 μ.μ. |
Zmoli775 Δημοσιεύτηκε στις 2022-9-28 08:55
Πρέπει να βασίζεται στο EDG ως πονοκέφαλο

Όχι, αλλά πρέπει να εγκαταστήσετε το webview2 runtime
Δημοσιεύτηκε στις 8/10/2022 3:06:24 μ.μ. |
Μαθαίνω να μαθαίνω
Δημοσιεύτηκε στις 31/3/2023 1:32:46 μ.μ. |
Το Win7 δεν φαίνεται να λειτουργεί, διάβασα την τεκμηρίωση της Microsoft λέει ότι δεν το υποστηρίζει;
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 7/1/2025 1:29:35 μ.μ. |
στην ίδια διαδικασία. NET και JavaScript.

Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com