Compartir a través de


Introducción a WebView2 en aplicaciones winUI 3 (SDK de Aplicaciones para Windows)

En este artículo se explica cómo configurar las herramientas de desarrollo y crear una aplicación WebView2 inicial para WinUI 3 (SDK de Aplicaciones para Windows) y obtener información sobre los conceptos de WebView2 en el camino. Primero se usa la plantilla de proyecto Aplicación en blanco, empaquetada (WinUI 3 en escritorio) de Visual Studio, que usa WindowsAppSDK, que incluye el SDK de WebView2. A continuación, agregue un control WebView2, una barra de direcciones y un botón Go , y lógica de dirección URL para permitir solo la navegación a direcciones URL HTTPS.

En este tutorial, hará lo siguiente:

  1. Configure el entorno de desarrollo.

  2. Use la plantilla de proyecto Aplicación en blanco, empaquetada (WinUI 3 en el escritorio) de Visual Studio para crear un proyecto winUI 3 en blanco, que define una aplicación que contiene un botón.

  3. Agregue un control WebView2 en lugar del botón y vaya inicialmente a la página principal de Microsoft. WebView2 es compatible porque la plantilla de proyecto usa el paquete NuGet Microsoft.WindowsAppSDK , que incluye el SDK de WebView2.

  4. Agregue una barra de direcciones como control de cuadro de texto y, a continuación, use la cadena HTTPS especificada para navegar a una nueva página web:

    La aplicación, después de navegar a la dirección HTTPS de Bing

  5. Inserte JavaScript en el control WebView2 para mostrar una alerta de advertencia (cuadro de diálogo) cuando el usuario intenta navegar a una dirección URL que solo tiene un http:// prefijo en lugar de https://:

    El control WebView2 de la aplicación muestra un cuadro de diálogo de alerta para sitios web que no son HTTPS.

Proyecto completado

Hay disponible una versión completa de este proyecto de tutorial en el repositorio WebView2Samples :

  • Nombre de ejemplo: WinUI3GetStarted
  • Directorio del repositorio: WinUI3_GettingStarted
  • Archivo de solución: WinUI3GetStarted.sln

Paso 1: Instalar la versión más reciente de Visual Studio 2022

Asegúrese de que Visual Studio 2022 está instalado y actualizado.

Para instalar la versión más reciente de Visual Studio 2022:

  1. Vaya a Visual Studio: IDE y Code Editor para desarrolladores de software y Teams y, a continuación, en la sección Visual Studio 2022, haga clic en el botón Descargar y, a continuación, seleccione Community 2022 u otra versión.

  2. En el menú emergente Descargas de la esquina superior derecha de Microsoft Edge, VisualStudioSetup.exe aparece. Haga clic en Abrir archivo.

    Instalador de Visual Studio se abre.

  3. Siga las indicaciones y acepte los valores predeterminados. Instalará o actualizará una carga de trabajo y un componente de una carga de trabajo en el paso siguiente.

Paso 2: Instalar el SDK de Aplicaciones para Windows más reciente

Asegúrese de que la SDK de Aplicaciones para Windows más reciente está instalada en Visual Studio 2022. El SDK de Aplicaciones para Windows incluye plantillas de proyecto de Visual Studio e incluye el SDK de WebView2. Estas plantillas de proyecto incluyen la plantilla de proyecto Aplicación en blanco, empaquetada (WinUI 3 en el escritorio), que usa WindowsAppSDK, incluido el SDK de WebView2.

El SDK de Aplicaciones para Windows se instala como el componente plantillas de C# SDK de Aplicaciones para Windows de la carga de trabajo Desarrollo de escritorio de .NET para Visual Studio. Antes de la versión 17.1 de Visual Studio 2022, la SDK de Aplicaciones para Windows se instaló en su lugar como una extensión de Visual Studio, como se explica en Instalar herramientas para el SDK de Aplicaciones para Windows.

Para instalar la versión más reciente de Visual Studio 2022, la última SDK de Aplicaciones para Windows:

  1. En Windows, presione la tecla Inicio y escriba Visual Studio 2022.

    Se muestra la aplicación de Visual Studio 2022.

  2. Haga clic en Open (Abrir).

    Se abre el cuadro de diálogo Visual Studio 2022 , con secciones como Abrir reciente y Empezar.

  3. Haga clic en Continuar sin código.

    Se abre Visual Studio.

  4. En el menú Herramientas , seleccione Obtener herramientas y características.

    Se abre la ventana Instalador de Visual Studio.

  5. Asegúrese de que la pestaña Cargas de trabajo está seleccionada.

  6. En la sección Escritorio & móvil , seleccione la tarjeta de la carga de trabajo desarrollo de escritorio de .NET para que aparezca una marca de verificación:

    Casilla del componente

  7. En el árbol Detalles de instalación de la derecha, en Desarrollo > de escritorio de .NETOpcional, active la casilla del componente Plantillas de C# SDK de Aplicaciones para Windows, cerca de la parte inferior del árbol.

  8. Haga clic en el botón Modificar .

    Se abre el cuadro de diálogo Control de cuentas de usuario .

  9. Haga clic en el botón .

    Se le pedirá que cierre Visual Studio.

  10. Haga clic en el botón Continuar (suponiendo que no tiene ningún trabajo sin guardar).

    Visual Studio descarga e instala el componente plantillas de C# más reciente SDK de Aplicaciones para Windows. En la ventana Instalador de Visual Studio, un mensaje indica que todas las instalaciones están actualizadas y se abre Visual Studio 2022.

Paso 3: Crear un proyecto de WinUI 3 en blanco

A continuación, cree un proyecto que sea una aplicación WebView2 básica para WinUI 3 (SDK de Aplicaciones para Windows). Esta aplicación de escritorio contendrá una sola ventana principal. El proyecto aún no contendrá ningún código WebView2.

Para crear una aplicación WebView2 para WinUI 3 (SDK de Aplicaciones para Windows):

  1. Si Visual Studio se está ejecutando, seleccione Archivo>nuevo>proyecto. Se abre el cuadro de diálogo Crear un nuevo proyecto .

  2. Si Visual Studio 2022 no se está ejecutando:

    1. En Windows, presione la tecla Inicio y escriba Visual Studio 2022.

      Se muestra la aplicación de Visual Studio 2022.

    2. Haga clic en Open (Abrir).

      Se abre el cuadro de diálogo de inicio de Visual Studio 2022 , con secciones como Abrir reciente y Introducción.

    3. En la sección Introducción , haga clic en la tarjeta Crear un nuevo proyecto . Se abre la ventana Crear un nuevo proyecto .

  3. En la ventana Crear un nuevo proyecto , en el campo Buscar plantillas , escriba WinUI 3 en Escritorio:

    Buscar en

    Se muestran las plantillas de proyecto instaladas en el paso principal anterior.

  4. Haga clic en la tarjeta Aplicación en blanco, Empaquetada (WinUI 3 en escritorio) para seleccionarla y, a continuación, haga clic en el botón Siguiente .

    Aparece el cuadro de diálogo Configurar el nuevo proyecto .

  5. En el cuadro de texto Nombre del proyecto, escriba un nombre de proyecto, como WinUI3GetStarted:

    Cuadro de diálogo

  6. En el cuadro de texto Ubicación , escriba o vaya a un directorio, como C:\Users\myUsername\source\.

  7. Haga clic en el botón Crear.

    El proyecto se crea:

El nuevo proyecto de WinUI 3 en Explorador de soluciones

  1. Si aparece un cuadro de diálogo que indica "No se pudo instalar el paquete Microsoft.WindowsAppSDK", haga clic en el botón Aceptar .

Paso 4: Actualizar o instalar el SDK de Aplicaciones para Windows

Al crear un proyecto en Visual Studio, compruebe el estado de los paquetes NuGet de la solución. Asegúrese de que la plantilla de proyecto ha instalado los paquetes NuGet necesarios y asegúrese de que los paquetes se han actualizado para que el proyecto tenga las características y correcciones más recientes.

Para actualizar o instalar el paquete NuGet de SDK de Aplicaciones para Windows más reciente para el proyecto:

  1. En Visual Studio, en Explorador de soluciones, haga clic con el botón derecho en el proyecto WinUI3GetStarted y, a continuación, seleccione Administrar paquetes NuGet.

    En Visual Studio, se abre la pestaña NuGet: WinUI3GetStarted . Si el paquete Microsoft.WindowsAppSDK se ha instalado durante la creación del proyecto mediante la plantilla de proyecto, se selecciona la pestaña Instalado y se muestra ese paquete:

    Paquetes esperados que aparecen en la pestaña Instalado de la pestaña NuGet

    Si el paquete Microsoft.WindowsAppSDK no aparece en la pestaña Instalado :

  2. Haga clic en la pestaña Examinar y, en el cuadro de texto Buscar , escriba Microsoft.WindowsAppSDK.

  3. Seleccione la tarjeta Microsoft.WindowsAppSDK :

    Instalación del paquete del SDK

  4. Haga clic en el botón Instalar , a la derecha.

    Se abre el cuadro de diálogo Vista previa de cambios .

  5. Haga clic en el botón Aplicar y acepte los términos de licencia.

    El paquete NuGet Microsoft.WindowsAppSDK está instalado.

  6. En la pestaña NuGet - Solución, haga clic en la pestaña Novedades y, opcionalmente, actualice los paquetes que se enumeran allí.

  7. Cierre la pestaña NuGet - Solución .

Paso 5: Compilación y ejecución del proyecto

El nuevo proyecto de WinUI 3 permanece abierto en Explorador de soluciones en Visual Studio:

El nuevo proyecto de WinUI 3 en Explorador de soluciones

  • El App.xaml.cs archivo define una Application clase que representa la instancia de la aplicación.

  • El MainWindow.xaml.cs archivo define una MainWindow clase que representa la ventana principal que muestra la instancia de la aplicación. Las clases derivan de tipos del Microsoft.UI.Xaml espacio de nombres de WinUI.

Para compilar y ejecutar el proyecto:

  1. SeleccioneGuardar todo en archivo> (Ctrl+Mayús+S).

  2. Seleccione Inicio de depuración> (F5).

    Es posible que se abra el cuadro de diálogo Habilitar modo de desarrollador para Windows :

    Cuadro de diálogo: Habilitar el modo de desarrollador para Windows

  3. Si aparece ese cuadro de diálogo, haga clic en configuración para desarrolladores, active la alternancia Modo de desarrollador , haga clic en el botón y, a continuación, haga clic en el botón Cerrar del cuadro de diálogo de Visual Studio. Para obtener más información sobre el modo de desarrollador, consulte Habilitación del dispositivo para el desarrollo, en Compilación de aplicaciones de escritorio para Windows.

    El proyecto se compila. Se abre la aplicación winUI Desktop en blanco, sin ningún control WebView2 agregado todavía:

    La nueva aplicación WinUI 3 en blanco

  4. Haga clic en el botón Hacer clic en mí .

    La etiqueta del botón cambia a Clicado.

  5. Cierre la aplicación.

Paso 6: Agregar un control WebView2

El proyecto se basa en la plantilla de proyecto Aplicación en blanco, empaquetada (WinUI 3 en el escritorio), que usa el paquete NuGet Microsoft.WindowsAppSDK , que incluye el SDK de WebView2. Por lo tanto, podemos agregar código WebView2. Editará los MainWindow.xaml archivos y MainWindow.xaml.cs para agregar un control WebView2 al proyecto de aplicación winUI 3 en blanco, cargando inicialmente la página principal de Microsoft. En el archivo XAML, el control WebView se etiquetará como:

<controls:WebView2 x:Name="MyWebView" Source="https://www.microsoft.com">

Para agregar un control WebView2 que vaya inicialmente a la página principal de Microsoft:

  1. En Visual Studio, en Explorador de soluciones, haga doble clic en MainWindow.xaml.

    El archivo se abre en el editor de código.

  2. Copie y pegue el atributo siguiente dentro de la <Window> etiqueta start, al final de la lista de espacios de nombres XML:

    xmlns:controls="using:Microsoft.UI.Xaml.Controls"
    

    Ese código agrega el espacio de nombres XAML WebView2. Asegúrese de que el código de MainWindow.xaml es similar al siguiente:

    <?xml version="1.0" encoding="utf-8"?>
    <Window
        x:Class="MyWebView2WinUI3.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="using:MyWebView2WinUI3"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:controls="using:Microsoft.UI.Xaml.Controls"
        mc:Ignorable="d">
    
        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
            <Button x:Name="myButton" Click="myButton_Click">Click Me</Button>
        </StackPanel>
    </Window>
    
  3. Elimine el <StackPanel> elemento (tres líneas).

  4. Encima de la </Window> etiqueta final, pegue el siguiente <Grid> elemento:

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
    
        <controls:WebView2 x:Name="MyWebView"  Grid.Row="1" Grid.ColumnSpan="2"
            Source="https://www.microsoft.com" HorizontalAlignment="Stretch" 
            VerticalAlignment="Stretch"/>
    </Grid>
    

    Este <Grid> elemento contiene un <controls:WebView2> elemento denominado MyWebView, que tiene un Source atributo que establece el URI inicial que se muestra en el control WebView2 (https://www.microsoft.com). Cuando se abra la aplicación, se mostrará inicialmente el Microsoft.com página principal, en el control WebView2.

  5. En Explorador de soluciones, expanda MainWindow.xaml y haga doble clic en MainWindow.xaml.cs.

  6. En MainWindow.xaml.cs, elimine la siguiente línea de código de C# en el myButton_Click método :

    myButton.Content = "Clicked";
    

    El método está vacío por ahora. Lo usaremos para el botón Go de la barra de direcciones más adelante.

  7. SeleccioneGuardar todo en archivo> (Ctrl+Mayús+S).

  8. Pulse F5.

    El proyecto se compila y la aplicación se abre:

    Control WebView2 que muestra la página web de microsoft.com

    La aplicación es una aplicación host WebView2 que incluye el control WebView2. El control WebView2 muestra inicialmente el sitio web https://www.microsoft.com. Todavía no hay ningún cuadro de texto de la barra de direcciones ni el botón Go .

  9. Cierre la aplicación.

Paso 7: Agregar controles de navegación

Para permitir que los usuarios controlen qué página web se muestra en el control WebView2, agregue una barra de direcciones a la aplicación, como se indica a continuación:

  1. En MainWindow.xaml, pegue el código siguiente dentro del <Grid> elemento , encima del <controls:WebView2> elemento :

       <TextBox Name="addressBar" Grid.Column="0"/>
       <Button x:Name="myButton" Grid.Column="1" Click="myButton_Click">Go</Button>
    

    Asegúrese de que el elemento resultante <Grid> del MainWindow.xaml archivo coincide con lo siguiente:

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
    
        <TextBox Name="addressBar" Grid.Column="0"/>
        <Button x:Name="myButton" Grid.Column="1" Click="myButton_Click">Go</Button>
    
        <controls:WebView2 x:Name="MyWebView"  Grid.Row="1" Grid.ColumnSpan="2"
            Source="https://www.microsoft.com" HorizontalAlignment="Stretch" 
            VerticalAlignment="Stretch"/>
    </Grid>
    
  2. En MainWindow.xaml.cs, pegue el siguiente try/catch bloque en el cuerpo del myButton_Click método :

    private void myButton_Click(object sender, RoutedEventArgs e)
    {
        try
        {
            Uri targetUri = new Uri(addressBar.Text);
            MyWebView.Source = targetUri;
        }
        catch (FormatException ex)
        {
            // Incorrect address entered.
        }
    }
    

    Este código navega por el control WebView2 a la dirección URL que el usuario escribe en la barra de direcciones, cuando el usuario hace clic en el botón Go , volviendo a establecer el valor de la MyWebView.Source propiedad, que es equivalente al Source atributo del <controls:WebView2 x:Name="MyWebView"> elemento.

  3. SeleccioneGuardar todo en archivo> (Ctrl+Mayús+S).

  4. Pulse F5.

    El proyecto se compila y se abre la aplicación, mostrando inicialmente la página principal de Microsoft. Ahora hay una barra de direcciones y un botón Go .

  5. Escriba una nueva dirección URL HTTPS completa en la barra de direcciones, como https://www.bing.com, y, a continuación, haga clic en el botón Ir :

    La aplicación muestra el sitio web de Bing

    El control WebView2 de la aplicación muestra el sitio web de Bing. La barra dirección muestra la dirección URL, como https://www.bing.com.

  6. Escriba una dirección URL incompleta en la barra de direcciones, como bing.com, y, a continuación, haga clic en el botón Ir .

    El control WebView2 no intenta navegar a esa dirección URL. Se produce una excepción, porque la dirección URL no comienza con http:// o https://. En la try sección , la addressBar.Text cadena no comienza con http:// o https://, pero la cadena que no es de URI se pasa al Uri constructor, lo que produce una System.UriFormatException excepción. En Visual Studio, el panel Salida muestra "Excepción iniciada: 'System.UriFormatException' en System.Private.Uri.dll". La aplicación continúa ejecutándose.

  7. Cierre la aplicación.

Paso 8: Controlar eventos de navegación

Una aplicación que hospeda un control WebView2 escucha los eventos siguientes:

  • NavigationStarting
  • SourceChanged
  • ContentLoading
  • HistoryChanged
  • NavigationCompleted

Estos eventos los genera un control WebView2 durante la navegación por la página web. Si se produce una redirección HTTP, hay varios NavigationStarting eventos en una fila. Para obtener más información, vea Eventos de navegación para aplicaciones WebView2.

Cuando se produce un error, se generan los siguientes eventos y se puede mostrar una página web de error:

  • SourceChanged
  • ContentLoading
  • HistoryChanged

En esta sección, agregará código para importar la biblioteca WebView2 Core, que controla los eventos de navegación para ir a varios tipos de direcciones URL.

Para controlar eventos de navegación:

  1. En MainWindow.xaml.cs, agregue la siguiente línea en la parte superior, encima de las demás using instrucciones:

    using Microsoft.Web.WebView2.Core;
    

    Registre un controlador para NavigationStarting que cancele las solicitudes que no sean HTTPS:

  2. En MainWindow.xaml.cs, en el constructor, agregue la línea siguiente NavigationStarting :

    public MainWindow()
    {
        this.InitializeComponent();
        MyWebView.NavigationStarting += EnsureHttps;
    }
    

    Esa línea registra el EnsureHttps método (agregado a continuación) como agente de escucha del NavigationStarting evento.

  3. Debajo del constructor, agregue el siguiente EnsureHttps método:

    private void EnsureHttps(WebView2 sender, CoreWebView2NavigationStartingEventArgs args)
    {
        String uri = args.Uri;
        if (!uri.StartsWith("https://"))
        {
            args.Cancel = true;
        }
        else
        {
            addressBar.Text = uri;
        }
    }
    
  4. SeleccioneGuardar todo en archivo> (Ctrl+Mayús+S).

  5. Pulse F5.

    El proyecto se compila y se abre la aplicación.

  6. En la aplicación, en la barra Dirección, escriba una dirección URL HTTP, como http://bing.com, y, a continuación, haga clic en el botón Ir .

    La aplicación no navega a esa página, ya que la navegación está bloqueada en sitios HTTP. Todavía no hemos agregado un cuadro de diálogo para indicar al usuario por qué no ha cambiado el sitio mostrado.

  7. Escriba una dirección URL HTTPS, como https://bing.com, y, a continuación, haga clic en el botón Ir .

    La aplicación navega a la página especificada, ya que se permite la navegación para los sitios HTTPS.

  8. En la aplicación, en la barra Dirección, escriba una cadena sin prefijo, como bing.com, y, a continuación, haga clic en el botón Ir .

    La aplicación no navega a esa página. Se produce una UriFormatException excepción, como antes, y aparece en el panel Salida de Visual Studio.

  9. Cierre la aplicación.

Paso 9: Insertar JavaScript para alertar al usuario sobre una dirección que no es HTTPS

Puede usar la aplicación host para insertar código JavaScript en el control WebView2 en tiempo de ejecución. Puede realizar una tarea en WebView2 para ejecutar JavaScript arbitrario o agregar scripts de inicialización. JavaScript insertado se aplica a todos los nuevos documentos de nivel superior y a los marcos secundarios, hasta que se quita JavaScript. El Código JavaScript insertado se ejecuta con tiempo específico para:

  • Ejecute el Código JavaScript insertado después de la creación del objeto global.

  • Ejecute el Código JavaScript insertado antes de ejecutar cualquier otro script que se incluya en el documento HTML.

A continuación, agrega JavaScript que muestra una alerta cuando un usuario intenta abrir un sitio que no es HTTPS. Para ello, inserta un script en el contenido web que usa ExecuteScriptAsync.

Para mostrar una alerta cuando el usuario intenta navegar a un sitio que no es HTTPS:

  1. En MainWindow.xaml.cs, en el EnsureHttps método , agregue la línea siguiente ExecuteScriptAsync :

    private void EnsureHttps(WebView2 sender, CoreWebView2NavigationStartingEventArgs args)
    {
        String uri = args.Uri;
        if (!uri.StartsWith("https://"))
        {
            MyWebView.ExecuteScriptAsync($"alert('{uri} is not safe, try an https link')");
            args.Cancel = true;
        }
        else
        {
            addressBar.Text = uri;
        }
    }
    
  2. SeleccioneGuardar todo en archivo> (Ctrl+Mayús+S).

  3. Pulse F5.

    El proyecto se compila y se abre la aplicación.

  4. En la barra de direcciones de la aplicación, escriba una dirección URL que no sea HTTPS, como http://www.bing.comy, a continuación, haga clic en el botón Ir .

    El control WebView2 de la aplicación muestra un cuadro de diálogo de alerta para sitios web que no son HTTPS, que indica que no uri es seguro:

    El control WebView2 de la aplicación muestra un cuadro de diálogo de alerta para sitios web que no son HTTPS.

  5. Cierre la aplicación.

Enhorabuena, ha creado una aplicación WebView2 WinUI 3 (SDK de Aplicaciones para Windows).

WinAppSDK admite entornos WebView2 personalizados

WinAppSDK admite entornos WebView2 personalizados, a partir de WinAppSDK 1.5 (1.5.0-experimental2). Para obtener más información, vea WinUI3 WebView2 con un CoreWebView2Environment personalizado.

Para crear una instancia de un entorno WebView2 personalizado, puede inicializar WebView2 con una de las invalidaciones de WebView2.EnsureCoreWebView2Async (que se enumeran a continuación) y pasar su personalizado CoreWebView2Environment (y, opcionalmente, personalizado CoreWebView2ControllerOptions):

public IAsyncAction EnsureCoreWebView2Async (CoreWebView2Environment environment)
public IAsyncAction EnsureCoreWebView2Async (CoreWebView2Environment environment, CoreWebView2ControllerOptions controllerOptions)

Vea también el código de ejemplo en Deshabilitación de la navegación smartscreen, a continuación.

Referencia de API:

Consideraciones especiales de WinUI 3 WebView2

Deshabilitación de la navegación de SmartScreen

WebView2 envía las direcciones URL a las que se navega en la aplicación al servicio SmartScreen para asegurarse de que los clientes permanecen seguros. Si desea deshabilitar esta navegación, use un elemento personalizado CoreWebView2Environment, como se indica a continuación:

CoreWebView2EnvironmentOptions environmentOptions = new CoreWebView2EnvironmentOptions();
environmentOptions.AdditionalBrowserArguments = "--disable-features=msSmartScreenProtection";

string browserFolder = null; // Use null to get default browser folder
string userDataFolder = null; // Use null to get default user data folder
CoreWebView2Environment environment = await CoreWebView2Environment.CreateWithOptionsAsync(
    browserFolder, userDataFolder, environmentOptions);

// ...

this.WebView2.EnsureCoreWebView2Async(environment);
Deshabilitación de SmartScreen mediante una variable de entorno

Ya no se recomienda usar una variable de entorno. En su lugar, use el enfoque basado en código de API anterior.

  • Environment.SetEnvironmentVariable("WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS", "--disable-features=msSmartScreenProtection");

Esta variable de entorno debe establecerse antes de CoreWebView2 la creación, que se produce cuando se establece inicialmente la propiedad WebView2.Source o se llama inicialmente al método WebView2.EnsureCoreWebView2Async .

Establecer DefaultBackgroundColor

En WebView2 para WinUI 3, la DefaultBackgroundColor configuración existe en el objeto XAML WebView2. Por ejemplo:

public MainWindow()
{
    this.InitializeComponent();
    MyWebView.DefaultBackgroundColor = Colors.LightBlue;
}

Transparencia

WinUI 3 no admite fondos transparentes. Consulte Compatibilidad en segundo plano transparente con WebView2? · Problema n.º 2992.

Compatibilidad con WinAppSDK para entornos WebView2 personalizados

Consulte WinAppSDK admite entornos WebView2 personalizados, anteriormente.

Vea también

developer.microsoft.com:

GitHub: