Partager via


Vue d’ensemble des fonctionnalités et API WebView2

L’incorporation du contrôle WebView2 dans votre application permet à votre application d’accéder à diverses méthodes et propriétés fournies par le biais des classes ou interfaces WebView2. WebView2 propose des centaines d’API qui fournissent un vaste ensemble de fonctionnalités, allant de l’amélioration des fonctionnalités de la plateforme native de votre application à la possibilité pour votre application de modifier les expériences de navigateur. Cet article fournit un regroupement de haut niveau des API WebView2 pour vous aider à comprendre les différentes actions que vous pouvez effectuer à l’aide de WebView2.

Vue d’ensemble des domaines de fonctionnalités de niveau supérieur

Lors de l’hébergement du contrôle WebView2, votre application a accès aux fonctionnalités et API suivantes :

Fonctionnalité Objectif
Classes principales : Environnement, Contrôleur et Cœur Les CoreWebView2Environmentclasses , CoreWebView2Controlleret CoreWebView2 (ou interfaces équivalentes) fonctionnent ensemble pour que votre application puisse héberger un contrôle de navigateur WebView2 et accéder à ses fonctionnalités de navigateur. Ces grandes classes exposent un large éventail d’API auxquelles votre application hôte peut accéder pour fournir les catégories ci-dessous de fonctionnalités liées au navigateur pour vos utilisateurs.
Interopérabilité web/native Incorporer du contenu web dans des applications natives. Communiquez entre le code natif et le code web à l’aide de messages simples, de code JavaScript et d’objets natifs.
Fonctionnalités du navigateur Le contrôle WebView2 permet à votre application d’accéder à de nombreuses fonctionnalités de navigateur. Vous pouvez modifier ces fonctionnalités de navigateur et les activer ou les désactiver.
Gestion des processus Obtenez des informations sur l’exécution des processus WebView2, les processus de fermeture et les processus ayant échoué, afin que votre application puisse prendre des mesures en conséquence.
Accéder aux pages et gérer le contenu chargé Gérer la navigation vers les pages web et gérer le contenu chargé dans les pages web.
iframes Incorporez d’autres pages web dans votre propre page web. Détecter quand des pages web incorporées sont créées, détecter quand les pages web incorporées naviguent et éventuellement ignorer les options x-frame.
Authentification Votre application peut gérer l’authentification de base à l’aide du contrôle WebView2. L’authentification de base est une approche d’authentification spécifique qui fait partie du protocole HTTP.
Rendu de WebView2 dans les applications non-framework Utilisez ces API pour configurer le système de rendu WebView2 si votre application hôte n’utilise pas d’infrastructure d’interface utilisateur. Cette configuration de rendu contrôle la façon dont WebView2 restitue la sortie dans votre application hôte et la façon dont WebView2 gère l’entrée, le focus et l’accessibilité.
Rendu de WebView2 à l’aide de la composition Pour le rendu WebView2 basé sur la composition, utilisez CoreWebView2Environment pour créer un CoreWebView2CompositionController. CoreWebView2CompositionController fournit les mêmes API que CoreWebView2Controller, mais inclut également des API pour le rendu basé sur la composition.
Options d’environnement Données utilisateur : gérez le dossier de données utilisateur (UDF), qui est un dossier sur l’ordinateur de l’utilisateur. La fonction définie par l’utilisateur contient des données relatives à l’application hôte et à WebView2. Les applications WebView2 utilisent des dossiers de données utilisateur pour stocker les données du navigateur, telles que les cookies, les autorisations et les ressources mises en cache. Gérer plusieurs profils sous une seule fonction définie par l’utilisateur.
La sélection du runtime prend en charge les tests de préversion et l’auto-hébergement. Vous pouvez spécifier un ordre de recherche pour les canaux d’aperçu du navigateur et spécifier les canaux d’aperçu de navigateur recherchés.
Performances et débogage Analysez et déboguez les performances, gérez les événements liés aux performances et gérez l’utilisation de la mémoire pour augmenter la réactivité de votre application.
Chrome DevTools Protocol (CDP) Instrumenter, inspecter, déboguer et profiler des navigateurs basés sur Chromium. Le protocole CDP (Chrome DevTools Protocol) est la base de Microsoft Edge DevTools. Utilisez le protocole Chrome DevTools pour les fonctionnalités qui ne sont pas implémentées dans la plateforme WebView2.

Cette page répertorie uniquement les API qui se trouvent dans les Kits de développement logiciel (SDK) release ; il ne répertorie pas les API expérimentales ou les API stables qui ne sont pas encore disponibles dans les KITS de développement logiciel (SDK) release. Pour obtenir une liste complète des API, y compris les API expérimentales, consultez Notes de publication du Kit de développement logiciel (SDK) WebView2.

Classes principales : Environnement, Contrôleur et Cœur

Les CoreWebView2Environmentclasses , CoreWebView2Controlleret CoreWebView2 (ou interfaces équivalentes) fonctionnent ensemble pour que votre application puisse héberger un contrôle de navigateur WebView2 et accéder à ses fonctionnalités de navigateur. Ces trois grandes classes exposent un large éventail d’API auxquelles votre application hôte peut accéder pour fournir de nombreuses catégories de fonctionnalités liées au navigateur pour vos utilisateurs.

  • La CoreWebView2Environment classe représente un groupe de contrôles WebView2 qui partagent le même processus de navigateur WebView2, le même dossier de données utilisateur et les mêmes processus de renderer. À partir de cette CoreWebView2Environment classe, vous créez des paires d’instances CoreWebView2Controller et CoreWebView2 .
  • La CoreWebView2Controller classe est responsable des fonctionnalités liées à l’hébergement, telles que le focus de fenêtre, la visibilité, la taille et l’entrée, où votre application héberge le contrôle WebView2.
  • La CoreWebView2 classe est destinée aux parties spécifiques au web du contrôle WebView2, notamment la mise en réseau, la navigation, le script, l’analyse et le rendu HTML.

Voir aussi :

Interopérabilité web/native

Le contrôle Microsoft Edge WebView2 vous permet d’incorporer du contenu web dans des applications natives. Vous pouvez communiquer entre le code natif et le code web à l’aide de messages simples, de code JavaScript et d’objets natifs. Voici les API main pour la communication entre le code web et le code natif.

Sous-sections ci-dessous :

Cas d’usage courants pour l’interopérabilité web/native :

  • Mettez à jour le titre de la fenêtre hôte native après avoir accédé à un autre site web.
  • Envoyer un objet caméra natif et utiliser ses méthodes à partir d’une application web.
  • Exécutez un fichier JavaScript dédié côté web d’une application.

Voir aussi :

Partage d’objets hôte/web

WebView2 permet aux objets définis dans le code natif d’être passés au code côté web de votre application. Les objets hôtes sont tous les objets définis dans le code natif que vous choisissez de passer au code côté web de votre application.

Les objets hôtes peuvent être projetés dans JavaScript, de sorte que vous pouvez appeler des méthodes d’objet natives (ou d’autres API) à partir du code côté web de votre application. Par exemple, votre application peut appeler ces API à la suite d’une interaction utilisateur sur le web de votre application. De cette façon, vous n’avez pas besoin de ré-implémenter les API de vos objets natifs, telles que les méthodes ou les propriétés, dans votre code côté web.

Exécution du script

Permet à l’application hôte d’ajouter du code JavaScript dans le contenu web dans le contrôle WebView2.

Messagerie web

Votre application peut envoyer des messages au contenu web qui se trouve dans le contrôle WebView2 et recevoir des messages à partir de ce contenu web. Les messages sont envoyés sous forme de chaînes ou d’objets JSON.

Vous pouvez éventuellement publier et recevoir des objets DOM avec votre message, via le additionalObjects paramètre ( PostWebMessageAsJson .NET, WinRT) ou via PostWebMessageAsJsonWithAdditionalObjects (Win32). La classe WebView2 CoreWebView2FileSystemHandle représente le DOM FileSystemHandleet CoreWebView2File le DOM File. Voir aussi chrome.webview.postMessageWithAdditionalObjects dans la référence JavaScript.

Boîtes de dialogue de script

Lors de l’hébergement de WebView2, votre application peut gérer différents dialogues JavaScript, les supprimer ou les remplacer par des dialogues personnalisés.

Mémoire tampon partagée

L’API SharedBuffer prend en charge le partage de mémoires tampons entre le processus d’application hôte WebView2 et le processus de renderer WebView2, en fonction de la mémoire partagée du système d’exploitation.

Voir aussi :

Fonctionnalités du navigateur

Le contrôle WebView2 permet à votre application d’accéder à de nombreuses fonctionnalités de navigateur. Vous pouvez modifier ces fonctionnalités de navigateur et les activer ou les désactiver.

Sous-sections ci-dessous :

Impression

Vous pouvez imprimer une page web sur une imprimante, un fichier PDF ou un flux PDF en configurant des paramètres d’impression personnalisés.

Voir aussi :

Cookies

Vous pouvez utiliser des cookies dans WebView2 pour gérer les sessions utilisateur, stocker les préférences de personnalisation des utilisateurs et suivre le comportement des utilisateurs.

Voir aussi :

Capture d’image

En hébergeant WebView2, votre application peut capturer des captures d’écran et indiquer le format à utiliser pour enregistrer l’image.

Téléchargements

Votre application peut gérer l’expérience de téléchargement dans WebView2. Votre application peut :

  • Autorisez ou bloquez les téléchargements en fonction de différentes métadonnées.
  • Modifier l’emplacement de téléchargement.
  • Configurez une interface utilisateur de téléchargement personnalisée.
  • Personnalisez l’interface utilisateur par défaut.

Généralités:

Modifier l’expérience par défaut :

Expérience de téléchargement personnalisée :

Enregistrer sous

Les API Enregistrer sous vous permettent d’effectuer par programmation l’opération Enregistrer sous . Vous pouvez utiliser ces API pour bloquer la boîte de dialogue Enregistrer sous par défaut, puis enregistrer en mode silencieux ou créer votre propre interface utilisateur pour Enregistrer sous. Ces API se rapportent uniquement à la boîte de dialogue Enregistrer sous , et non à la boîte de dialogue Télécharger , qui utilise les API De téléchargement.

Configurer l’avertissement de sécurité lors de l’enregistrement d’un fichier

En écoutant l’événement SaveFileSecurityCheckStarting , votre application peut inscrire un gestionnaire sur cet événement pour obtenir le chemin d’accès au fichier, l’extension de nom de fichier et les informations de l’URI d’origine du document. Vous pouvez ensuite appliquer vos propres règles pour effectuer des actions telles que les suivantes :

  • Autorisez l’enregistrement du fichier sans présenter d’interface utilisateur d’avertissement de sécurité par défaut concernant la stratégie de type de fichier.
  • Annulez l’enregistrement.
  • Créez votre propre interface utilisateur pour gérer les stratégies de type de fichier runtime.

Gestion des notifications web

Les API de notification web prennent en charge les notifications non persistantes. L’événement NotificationReceived pour CoreWebView2 contrôle la gestion des notifications web, ce qui permet la personnalisation ou la suppression par l’application hôte. Les notifications non gérées sont par défaut l’interface utilisateur de WebView2.

Autorisations

Différentes pages web peuvent vous demander des autorisations pour accéder à certaines ressources privilégiées, telles que le capteur de géolocalisation, la caméra et le microphone. Votre application hôte peut répondre par programmation aux demandes d’autorisations et peut remplacer l’interface utilisateur des autorisations par défaut par sa propre interface utilisateur.

Menus contextuels

Le contrôle WebView2 fournit un menu contextuel par défaut (menu contextuel) que vous pouvez personnaliser ou désactiver, et vous pouvez également créer votre propre menu contextuel.

Voir aussi :

Barre d’état

Une barre de status se trouve en bas à gauche de la page et affiche l’état de la page web affichée. Dans WebView2, vous pouvez activer/désactiver la barre d’status, obtenir le texte dans la barre de status et déterminer quand le texte de la barre de status a changé.

Barres de défilement de superposition Fluent

Stylise les barres de défilement avec la conception Microsoft Fluent et rend les barres de défilement superposées sur le contenu web. Cette conception de barre de défilement adaptative s’ajuste aux différents appareils et tailles de fenêtre.

Pour tester les barres de défilement de superposition Fluent, dans Microsoft Edge, accédez à edge://flags , puis entrez Barres de défilement de superposition Fluent.

Voir aussi :

  • Indicateurs - msEdgeFluentOverlayScrollbar de navigateur WebView2 et msOverlayScrollbarWinStyle indicateurs.

Agent utilisateur

L’agent utilisateur est une chaîne qui représente l’identité du programme pour le compte de l’utilisateur, par exemple le nom du navigateur. Dans WebView2, vous pouvez définir l’agent utilisateur.

Voir aussi :

Remplissage automatique

Votre application peut contrôler indépendamment si la fonctionnalité de remplissage automatique du navigateur est activée pour les informations générales ou pour les mots de passe.

L’audio

Votre application peut désactiver et réactiver tout le son, et savoir quand l’audio est en cours de lecture.

Test d’accès aux clics de souris dans les régions

Fournit les résultats des tests de positionnement sur les régions qu’un WebView2 contient. Utile pour les applications hébergées visuellement qui souhaitent gérer les événements de souris sur la zone non cliente de la fenêtre WebView2.

Navigation par mouvement de balayage

En hébergeant le contrôle WebView2, votre application peut activer ou désactiver la navigation par mouvement de balayage sur les appareils compatibles avec l’entrée tactile. Ce mouvement permet aux utilisateurs finaux d’effectuer les événements suivants :

  • Balayez vers la gauche/droite (balayez horizontalement) pour accéder à la page précédente ou suivante dans l’historique de navigation.
  • Tirer pour actualiser (balayer verticalement) la page active.

Cette fonctionnalité est actuellement désactivée par défaut dans le navigateur. Pour activer cette fonctionnalité dans WebView2, définissez la AdditionalBrowserArguments propriété en spécifiant le --pull-to-refresh commutateur.

Activer ou désactiver le navigateur qui répond aux touches d’accélérateur (touches de raccourci)

ICoreWebView2AcceleratorKeyPressedEventArgs a une IsBrowserAcceleratorKeyEnabled propriété pour vous permettre de contrôler si le navigateur gère les touches d’accélérateur (touches de raccourci), telles que Ctrl+P ou F3.

Voir aussi :

Plein écran

Dans WebView2, vous pouvez savoir quand un élément HTML entre en mode plein écran ou en sort.

Barre d’outils PDF

Dans la visionneuse PDF du navigateur, il y a une barre d’outils spécifique au fichier PDF en haut. Dans WebView2, vous pouvez masquer certains éléments dans la barre d’outils de la visionneuse PDF.

Thèmes

Dans WebView2, vous pouvez personnaliser le thème de couleur en tant que système, clair ou sombre.

Langue

La Language propriété définit la langue d’affichage par défaut pour WebView2 qui s’applique à l’interface utilisateur du navigateur (par exemple, les menus contextuels et les boîtes de dialogue), ainsi que la définition de l’en-tête accept-language HTTP que WebView2 envoie aux sites web.

La ScriptLocale propriété permet à l’application hôte de définir les paramètres régionaux par défaut pour toutes les Intl API JavaScript et autres API JavaScript qui en dépendent, telles que Intl.DateTimeFormat(), ce qui affecte la mise en forme des chaînes dans les formats d’heure/date.

Nouvelle fenêtre

WebView2 fournit des fonctionnalités pour gérer la fonction window.open()JavaScript .

Fermer la fenêtre

WebView2 fournit des fonctionnalités pour gérer la fonction window.close()JavaScript .

Titre du document

Votre application peut détecter quand le titre du document de niveau supérieur actuel a changé.

Favicon

Dans WebView2, vous pouvez définir un Favicon pour un site web ou recevoir une notification en cas de modification.

Sécurité et confidentialité

Prévention du suivi

La prévention du suivi permet à l’application hôte de contrôler le niveau de prévention du suivi du contrôle WebView2 associé au profil utilisateur.

SmartScreen

Microsoft Defender SmartScreen (« SmartScreen ») est activé par défaut. La IsReputationCheckingRequired propriété contrôle si SmartScreen est activé.

Si vous ne désactivez pas SmartScreen, vous devez informer tous les utilisateurs que votre logiciel inclut Microsoft Defender SmartScreen, et qu’il collecte et envoie les informations de l’utilisateur à Microsoft comme indiqué dans la Déclaration de confidentialité Microsoft et dans SmartScreen dans le livre blanc sur la confidentialité de Microsoft Edge.

Voir aussi :

  • SmartScreen dans Données et confidentialité dans WebView2.
Rapports d’incident personnalisés

Si un processus WebView2 se bloque, un ou plusieurs fichiers minidump sont créés et envoyés à Microsoft à des fins de diagnostic. Utilisez cette API pour personnaliser les rapports d’incident lors de l’exécution d’diagnostics et de l’analyse.

  • Pour empêcher l’envoi de vidages sur incident à Microsoft, définissez la propriété sur IsCustomCrashReportingEnabledfalse.
  • Pour localiser les vidages sur incident et les personnaliser, utilisez la CrashDumpFolderPath propriété .

Voir aussi :

Extensions de navigateur

Votre application peut incorporer un contrôle WebView2 qui utilise des extensions de navigateur (modules complémentaires). Une extension Microsoft Edge est une petite application que les développeurs utilisent pour ajouter ou modifier des fonctionnalités de Microsoft Edge afin d’améliorer l’expérience de navigation d’un utilisateur.

Voir aussi :

Gestion des processus

Obtenez des informations sur l’exécution des processus WebView2, les processus de fermeture et les processus ayant échoué, afin que votre application puisse prendre des mesures en conséquence.

Sous-sections ci-dessous :

Informations sur le processus de trame

L’API d’informations sur le processus de trame, y compris GetProcessExtendedInfos, fournit une instantané collection de toutes les images qui s’exécutent activement dans le processus de renderer associé. Cette API permet à votre application de détecter la partie de WebView2 qui consomme des ressources telles que la mémoire ou l’utilisation du processeur.

Grâce au contrôle WebView2, votre application peut gérer la navigation vers les pages web et gérer le contenu chargé dans les pages web.

Sous-sections ci-dessous :

Gérer le contenu chargé dans WebView2

Ces API chargent, arrêtent le chargement et rechargent le contenu sur WebView2. Le contenu chargé peut être :

  • Contenu d’une URL.
  • Chaîne html.
  • Contenu local via le mappage de nom d’hôte virtuel à dossier local.
  • Contenu d’une requête réseau construite.

Voir aussi :

Les méthodes d’historique permettent la navigation vers l’arrière et vers l’avant dans WebView2, et les événements d’historique fournissent des informations sur les modifications apportées à l’historique et à la source actuelle de WebView2.

NavigationKind obtient le type de navigation de chaque navigation, par exemple Retour/Avant, Rechargement ou navigation vers un nouveau document.

Bloquer la navigation indésirable

L’événement NavigationStarting permet à l’application d’annuler la navigation vers les URL spécifiées dans WebView2, y compris pour les images.

Avec NavigationStarting et les autres événements de navigation, l’application peut être informée de l’état de la navigation dans WebView2. Une navigation est le processus de chargement d’une nouvelle URL.

Voir aussi :

Gérer les demandes réseau dans WebView2

L’événement WebResourceRequested permet à l’application d’intercepter et de remplacer toutes les requêtes réseau dans WebView2. L’événement WebResourceResponseReceived permet à l’application de surveiller la requête envoyée et la réponse reçue du réseau.

Voir aussi :

Inscription de schéma personnalisé

Autorise CustomSchemeRegistration l’inscription de schémas personnalisés dans WebView2 afin que l’application puisse gérer l’événement WebResourceRequested pour les demandes adressées à ces URL de schéma personnalisé et naviguer dans webView2 vers ces URL.

Certificats clients

Dans WebView2, vous pouvez utiliser l’API Certificat client pour sélectionner le certificat client au niveau de l’application. Cette API vous permet d’effectuer les points suivants :

  • Afficher une interface utilisateur à l’utilisateur, si vous le souhaitez.
  • Remplacez l’invite de dialogue de certificat client par défaut.
  • Interrogez les certificats par programmation.
  • Sélectionnez un certificat dans la liste pour répondre au serveur, lorsque WebView2 adresse une requête à un serveur HTTP qui a besoin d’un certificat client pour l’authentification HTTP.

Certificats de serveur

Dans WebView2, vous pouvez utiliser l’API de certificat de serveur pour approuver le certificat TLS du serveur au niveau de l’application. De cette façon, votre application hôte peut afficher la page sans demander à l’utilisateur d’indiquer l’erreur TLS, ou votre application hôte peut annuler automatiquement la demande.

Lancer un schéma d’URI externe

Lancez un schéma d’URI inscrit auprès du système d’exploitation.

iframes

Les iframes vous permettent d’incorporer d’autres pages web dans votre propre page web. Dans WebView2, vous pouvez :

  • Découvrez quand les iframes sont créés.
  • Découvrez quand les iframes naviguent.
  • Autoriser le contournement des options x-frame.

Voir aussi :

Authentification

Votre application peut gérer l’authentification de base à l’aide du contrôle WebView2. L’authentification de base est une approche d’authentification spécifique qui fait partie du protocole HTTP.

Voir aussi :

Rendu de WebView2 dans les applications non-framework

Utilisez ces API pour configurer le système de rendu WebView2 si votre application hôte n’utilise pas d’infrastructure d’interface utilisateur. Cette configuration de rendu contrôle la façon dont WebView2 restitue la sortie dans votre application hôte et la façon dont WebView2 gère l’entrée, le focus et l’accessibilité.

Quand utiliser ces API

  • Infrastructure de l’interface utilisateur : si vous utilisez une infrastructure d’interface utilisateur pour votre application, vous devez utiliser l’élément WebView2 fourni par cette infrastructure d’interface utilisateur, plutôt que d’utiliser ces API.

  • Pas d’infrastructure d’interface utilisateur et pas de composition : si vous n’utilisez pas d’infrastructure d’interface utilisateur pour votre application (par exemple, si vous utilisez win32 pur directement) ou si votre infrastructure d’interface utilisateur n’a pas d’élément WebView2, vous devez le créer CoreWebView2Controller et le restituer dans votre application, à l’aide des API décrites dans cette section.

  • Aucune infrastructure d’interface utilisateur et utilisation de la composition : si l’interface utilisateur de votre application est générée à l’aide de DirectComposition ou de Windows.UI.Composition, vous devez utiliser CoreWebView2CompositionController plutôt que d’utiliser ces API. Consultez Rendu WebView2 à l’aide de la composition ci-dessous.

Sous-sections ci-dessous :

Dimensionnement, positionnement et visibilité

CoreWebView2Controller prend un parent HWND. La Bounds propriété dimensionne et positionne WebView2 par rapport au parent HWND. La visibilité de WebView2 peut être activée à l’aide IsVisiblede .

Zoom

WebView2 ZoomFactor est utilisé pour mettre à l’échelle uniquement le contenu web de la fenêtre. La mise à l’échelle de l’interface utilisateur est également mise à jour lorsque l’utilisateur effectue un zoom sur le contenu en appuyant sur Ctrl tout en faisant pivoter la roulette de la souris.

Échelle de rastérisation

L’API RasterizationScale met à l’échelle toute l’interface utilisateur WebView2, y compris les menus contextuels, les info-bulles et les fenêtres contextuelles. L’application peut définir si Le WebView2 doit détecter les changements de mise à l’échelle de l’analyse et mettre automatiquement à jour RasterizationScale. BoundsMode est utilisé pour configurer si la propriété Bounds est interprétée comme des pixels bruts ou des DIPs (qui doivent être mis à l’échelle par RasterizationScale).

Focus et tabulation

Le contrôle WebView2 déclenche des événements pour indiquer à l’application quand le contrôle obtient le focus ou perd le focus. Pour la tabulation (en appuyant sur la touche Tab ), il existe une API pour déplacer le focus dans WebView2 et un événement pour WebView2 pour demander à l’application de reprendre le focus.

Fenêtre parente

WebView2 peut être réparenté dans un autre handle de fenêtre parent (HWND). WebView2 doit également être averti lorsque la position de l’application sur l’écran a changé.

Accélérateurs clavier

Lorsque WebView2 a le focus, il reçoit directement l’entrée de l’utilisateur. Une application peut vouloir intercepter et gérer certaines combinaisons de touches d’accélérateur (touches de raccourci) ou désactiver les comportements normaux des touches d’accélérateur de navigateur.

Voir aussi Activer ou désactiver le navigateur qui répond aux touches d’accélérateur (touches de raccourci) ci-dessus.

Couleur d’arrière-plan par défaut

WebView2 peut spécifier une couleur d’arrière-plan par défaut. La couleur peut être n’importe quelle couleur opaque ou transparente. Cette couleur sera utilisée si la page HTML ne définit pas sa propre couleur d’arrière-plan.

Rendu de WebView2 à l’aide de la composition

Pour le rendu WebView2 basé sur la composition, utilisez CoreWebView2Environment pour créer un CoreWebView2CompositionController. CoreWebView2CompositionController fournit les mêmes API que CoreWebView2Controller, mais inclut également des API pour le rendu basé sur la composition.

Sous-sections ci-dessous :

Connexion à l’arborescence visuelle

WebView2 peut connecter son arborescence de composition à un IDCompositionVisual, IDCompositionTarget ou Windows::UI::Composition::ContainerVisual.

Transfert d’entrée

Une entrée spatiale (souris, interaction tactile, stylet) est reçue par l’application et doit être envoyée à WebView2. WebView2 avertit l’application quand le curseur doit être mis à jour en fonction de la position de la souris.

Glisser-déplacer

Le glissement d’un contrôle WebView2 vers une autre application est pris en charge par défaut. Toutefois, pour faire glisser vers un contrôle WebView2, lorsque l’application hôte reçoit un IDropTarget événement du système, l’application hôte doit transférer l’événement au contrôle WebView2. Le glissement vers un contrôle WebView2 inclut des opérations de glisser-déplacer qui se trouvent entièrement dans un contrôle WebView2.

Utilisez les API suivantes pour transférer IDropTarget des événements du système au contrôle WebView2.

Accessibilité

Par défaut, WebView2 s’affiche dans l’arborescence d’accessibilité en tant qu’enfant du HWND parent, pour les applications Win32/C++. WebView2 fournit une API pour mieux positionner le contenu WebView2 par rapport aux autres éléments de l’application.

Non applicable.

Options d’environnement

Sous-sections ci-dessous :

Données utilisateur

Gérez le dossier de données utilisateur (UDF), qui est un dossier sur l’ordinateur de l’utilisateur. La fonction définie par l’utilisateur contient des données relatives à l’application hôte et à WebView2. Les applications WebView2 utilisent des dossiers de données utilisateur pour stocker les données du navigateur, telles que les cookies, les autorisations et les ressources mises en cache.

Sous-sections ci-dessous :

Voir aussi :

Effacement des données de navigation :

Plusieurs profils

Gérez plusieurs profils sous un seul dossier de données utilisateur.

Voir aussi :

Créez un objet options qui définit un profil :

Créez un contrôle WebView2 qui utilise le profil :

Accédez au profil et manipulez-le :

Supprimer un profil

Votre application peut supprimer des profils utilisateur pour un contrôle de navigateur web WebView2.

Voir aussi :

Sélection du runtime

La sélection du runtime prend en charge les tests de préversion et l’auto-hébergement. Lors de la création d’un environnement WebView2 :

  • Pour spécifier un ordre de recherche pour les canaux d’aperçu du navigateur, utilisez la CoreWebView2EnvironmentOptions.ChannelSearchKind propriété .
  • Pour spécifier les canaux d’aperçu du navigateur recherchés, utilisez la CoreWebView2EnvironmentOptions.ReleaseChannels propriété .

Voir aussi :

Performances et débogage

Analysez et déboguez les performances, gérez les événements liés aux performances et gérez l’utilisation de la mémoire pour augmenter la réactivité de votre application.

Sous-sections ci-dessous :

Cible d’utilisation de la mémoire

Spécifie les niveaux de consommation de mémoire, tels que low ou normal.

Chrome DevTools Protocol (CDP)

Le protocole CDP (Chrome DevTools Protocol) fournit des API pour instrumenter, inspecter, déboguer et profiler des navigateurs basés sur des Chromium. Le protocole Chrome DevTools est la base de Microsoft Edge DevTools. Utilisez le protocole Chrome DevTools pour les fonctionnalités qui ne sont pas implémentées dans la plateforme WebView2.

Voir aussi :

Ouvrir:

Appeler:

Récepteur:

Voir aussi