WebView2 応用テクニック

Faviconの画像を取得

表示したページのFavicon画像を取得します。
webView2.CoreWebView2.GetFaviconAsyncメソッドでFavicon画像のStreamを取得します。
Favicon画像が変更されたタイミングでCoreWebView2.FaviconChangedイベントが発生します。

サンプル

FormにWebView2とPictureBoxを配置します。
WebView2でfavicon画像を取得する

						Public Class Favicon
							Private Async Sub Favicon_Load(sender As Object, e As EventArgs) Handles MyBase.Load
						
								Await InitializeAsync()
						
								AddHandler webView2.CoreWebView2.FaviconChanged, AddressOf CoreWebView2_FaviconChanged
								webView2.CoreWebView2.Navigate("https://www.google.co.jp/")
						
							End Sub
						
							Private Async Sub CoreWebView2_FaviconChanged(sender As Object, e As Object)
						
								Using fs = Await webView2.CoreWebView2.GetFaviconAsync(Microsoft.Web.WebView2.Core.CoreWebView2FaviconImageFormat.Png)
									PictureBox1.Image = Image.FromStream(fs)
								End Using
						
							End Sub
						
							Private Async Function InitializeAsync() As Task
						
								Await webView2.EnsureCoreWebView2Async(Nothing)
						
							End Function
						
						End Class
					
						public partial class Favicon : Form
						{
							public Favicon()
							{
								InitializeComponent();
							}
					
							private async void Favicon_Load(object sender, EventArgs e)
							{
								await InitializeAsync();
								webView2.CoreWebView2.FaviconChanged += CoreWebView2_FaviconChanged;
								webView2.CoreWebView2.Navigate("https://www.google.co.jp/");
							}
					
							private async void CoreWebView2_FaviconChanged(object? sender, object e)
							{
								using var fs = await webView2.CoreWebView2.GetFaviconAsync(Microsoft.Web.WebView2.Core.CoreWebView2FaviconImageFormat.Png);
								pictureBox1.Image = Image.FromStream(fs);
							}
					
							private async Task InitializeAsync()
							{
								await webView2.EnsureCoreWebView2Async(null);
							}
						}
					

PictureBoxにFavicon画像が表示されます。
WebView2でfavicon画像を取得する

参考