Skip to content

Commit 4343f2d

Browse files
authored
Update "Overview of WebView2 APIs" for Aug. 2025 (#3556)
* add section * del todo's
1 parent 10a07b8 commit 4343f2d

File tree

1 file changed

+107
-2
lines changed

1 file changed

+107
-2
lines changed

microsoft-edge/webview2/concepts/overview-features-apis.md

Lines changed: 107 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.author: msedgedevrel
66
ms.topic: conceptual
77
ms.service: microsoft-edge
88
ms.subservice: webview
9-
ms.date: 06/03/2025
9+
ms.date: 08/11/2025
1010
---
1111
# Overview of WebView2 APIs
1212

@@ -33,6 +33,7 @@ when adding an h4 heading, add nav link below the h2
3333
* [Cookies](#cookies)
3434
* [Image capture](#image-capture)
3535
* [Control whether the screen capture UI is shown](#control-whether-the-screen-capture-ui-is-shown)
36+
* [Find](#find)
3637
* [Downloads](#downloads)
3738
* [Save as](#save-as)
3839
* [Configure the security warning when saving a file](#configure-the-security-warning-when-saving-a-file)
@@ -731,6 +732,111 @@ The `ScreenCaptureStarting` event is raised whenever the WebView2 and/or iframe
731732
---
732733

733734

735+
<!-- ------------------------------ -->
736+
#### Find
737+
738+
The Find API allows you to programmatically control **Find** operations, and enables adding the following functionality to your app:
739+
* Customize **Find** options, including **Find Term**, **Case Sensitivity**, **Word Matching**, **Match Highlighting**, and **Default UI Suppression**.
740+
* Find text strings and navigate among them within a WebView2 control.
741+
* Programmatically initiate **Find** operations, and navigate **Find** results.
742+
* Suppress the default **Find** UI.
743+
* Track the status of **Find** operations.
744+
745+
There are known issues with the Find API for PDF documents. When you view a PDF document within a WebView2 control, the **Find** feature currently only provides the first index and the number of matches found. For example, if the string occurs three times in a PDF, the UI would say **1/3** and would not support programmatically calling **Next** or **Previous**.
746+
747+
We're actively investigating these issues, and we encourage you to report any problems you encounter, by using the [WebView2Feedback](https://github.com/MicrosoftEdge/WebViewFeedback) repo.
748+
749+
##### [.NET/C#](#tab/dotnetcsharp)
750+
751+
* `CoreWebView2` Class:
752+
* [CoreWebView2.Find Property](/dotnet/api/microsoft.web.webview2.core.corewebview2.find)
753+
754+
* `CoreWebView2Environment` Class:
755+
* [CoreWebView2Environment.CreateFindOptions Method](/dotnet/api/microsoft.web.webview2.core.corewebview2environment.createfindoptions)
756+
757+
* [CoreWebView2Find Class](/dotnet/api/microsoft.web.webview2.core.corewebview2find)
758+
* [CoreWebView2Find.ActiveMatchIndex Property](/dotnet/api/microsoft.web.webview2.core.corewebview2find.activematchindex)
759+
* [CoreWebView2Find.ActiveMatchIndexChanged Event](/dotnet/api/microsoft.web.webview2.core.corewebview2find.activematchindexchanged)
760+
* [CoreWebView2Find.FindNext Method](/dotnet/api/microsoft.web.webview2.core.corewebview2find.findnext)
761+
* [CoreWebView2Find.FindPrevious Method](/dotnet/api/microsoft.web.webview2.core.corewebview2find.findprevious)
762+
* [CoreWebView2Find.MatchCount Property](/dotnet/api/microsoft.web.webview2.core.corewebview2find.matchcount)
763+
* [CoreWebView2Find.MatchCountChanged Event](/dotnet/api/microsoft.web.webview2.core.corewebview2find.matchcountchanged)
764+
* [CoreWebView2Find.StartAsync Method](/dotnet/api/microsoft.web.webview2.core.corewebview2find.startasync)
765+
* [CoreWebView2Find.Stop Method](/dotnet/api/microsoft.web.webview2.core.corewebview2find.stop)
766+
767+
* [CoreWebView2FindOptions Class](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions)
768+
* [CoreWebView2FindOptions.FindTerm Property](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions.findterm)
769+
* [CoreWebView2FindOptions.IsCaseSensitive Property](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions.iscasesensitive)
770+
* [CoreWebView2FindOptions.ShouldHighlightAllMatches Property](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions.shouldhighlightallmatches)
771+
* [CoreWebView2FindOptions.ShouldMatchWord Property](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions.shouldmatchword)
772+
* [CoreWebView2FindOptions.SuppressDefaultFindDialog Property](/dotnet/api/microsoft.web.webview2.core.corewebview2findoptions.suppressdefaultfinddialog)
773+
774+
##### [WinRT/C#](#tab/winrtcsharp)
775+
776+
* `CoreWebView2` Class:
777+
* [CoreWebView2.Find Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2#find)
778+
779+
* `CoreWebView2Environment` Class:
780+
* [CoreWebView2Environment.CreateFindOptions Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2environment#createfindoptions)
781+
782+
* [CoreWebView2Find Class](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find)
783+
* [CoreWebView2Find.ActiveMatchIndex Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#activematchindex)
784+
* [CoreWebView2Find.ActiveMatchIndexChanged Event](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#activematchindexchanged)
785+
* [CoreWebView2Find.FindNext Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#findnext)
786+
* [CoreWebView2Find.FindPrevious Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#findprevious)
787+
* [CoreWebView2Find.MatchCount Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#matchcount)
788+
* [CoreWebView2Find.MatchCountChanged Event](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#matchcountchanged)
789+
* [CoreWebView2Find.StartAsync Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#startasync)
790+
* [CoreWebView2Find.Stop Method](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2find#stop)
791+
792+
* [CoreWebView2FindOptions Class](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions)
793+
* [CoreWebView2FindOptions.FindTerm Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions#findterm)
794+
* [CoreWebView2FindOptions.IsCaseSensitive Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions#iscasesensitive)
795+
* [CoreWebView2FindOptions.ShouldHighlightAllMatches Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions#shouldhighlightallmatches)
796+
* [CoreWebView2FindOptions.ShouldMatchWord Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions#shouldmatchword)
797+
* [CoreWebView2FindOptions.SuppressDefaultFindDialog Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2findoptions#suppressdefaultfinddialog)
798+
799+
##### [Win32/C++](#tab/win32cpp)
800+
801+
* [ICoreWebView2_28](/microsoft-edge/webview2/reference/win32/icorewebview2_28)
802+
* [ICoreWebView2_28::get_Find](/microsoft-edge/webview2/reference/win32/icorewebview2_28#get_find)
803+
804+
* [ICoreWebView2Environment15](/microsoft-edge/webview2/reference/win32/icorewebview2environment15)
805+
* [ICoreWebView2Environment15::CreateFindOptions](/microsoft-edge/webview2/reference/win32/icorewebview2environment15#createfindoptions)
806+
807+
* [ICoreWebView2Find](/microsoft-edge/webview2/reference/win32/icorewebview2find)
808+
* [ICoreWebView2Find::add_ActiveMatchIndexChanged](/microsoft-edge/webview2/reference/win32/icorewebview2find#add_activematchindexchanged)
809+
* [ICoreWebView2Find::add_MatchCountChanged](/microsoft-edge/webview2/reference/win32/icorewebview2find#add_matchcountchanged)
810+
* [ICoreWebView2Find::FindNext](/microsoft-edge/webview2/reference/win32/icorewebview2find#findnext)
811+
* [ICoreWebView2Find::FindPrevious](/microsoft-edge/webview2/reference/win32/icorewebview2find#findprevious)
812+
* [ICoreWebView2Find::get_ActiveMatchIndex](/microsoft-edge/webview2/reference/win32/icorewebview2find#get_activematchindex)
813+
* [ICoreWebView2Find::get_MatchCount](/microsoft-edge/webview2/reference/win32/icorewebview2find#get_matchcount)
814+
* [ICoreWebView2Find::remove_ActiveMatchIndexChanged](/microsoft-edge/webview2/reference/win32/icorewebview2find#remove_activematchindexchanged)
815+
* [ICoreWebView2Find::remove_MatchCountChanged](/microsoft-edge/webview2/reference/win32/icorewebview2find#remove_matchcountchanged)
816+
* [ICoreWebView2Find::Start](/microsoft-edge/webview2/reference/win32/icorewebview2find#start)
817+
* [ICoreWebView2Find::Stop](/microsoft-edge/webview2/reference/win32/icorewebview2find#stop)
818+
819+
* [ICoreWebView2FindActiveMatchIndexChangedEventHandler](/microsoft-edge/webview2/reference/win32/icorewebview2findactivematchindexchangedeventhandler)
820+
821+
* [ICoreWebView2FindMatchCountChangedEventHandler](/microsoft-edge/webview2/reference/win32/icorewebview2findmatchcountchangedeventhandler)
822+
823+
* [ICoreWebView2FindOptions](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions)
824+
* [ICoreWebView2FindOptions::get_FindTerm](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#get_findterm)
825+
* [ICoreWebView2FindOptions::get_IsCaseSensitive](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#get_iscasesensitive)
826+
* [ICoreWebView2FindOptions::get_ShouldHighlightAllMatches](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#get_shouldhighlightallmatches)
827+
* [ICoreWebView2FindOptions::get_ShouldMatchWord](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#get_shouldmatchword)
828+
* [ICoreWebView2FindOptions::get_SuppressDefaultFindDialog](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#get_suppressdefaultfinddialog)
829+
* [ICoreWebView2FindOptions::put_FindTerm](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#put_findterm)
830+
* [ICoreWebView2FindOptions::put_IsCaseSensitive](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#put_iscasesensitive)
831+
* [ICoreWebView2FindOptions::put_ShouldHighlightAllMatches](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#put_shouldhighlightallmatches)
832+
* [ICoreWebView2FindOptions::put_ShouldMatchWord](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#put_shouldmatchword)
833+
* [ICoreWebView2FindOptions::put_SuppressDefaultFindDialog](/microsoft-edge/webview2/reference/win32/icorewebview2findoptions#put_suppressdefaultfinddialog)
834+
835+
* [ICoreWebView2FindStartCompletedHandler](/microsoft-edge/webview2/reference/win32/icorewebview2findstartcompletedhandler)
836+
837+
---
838+
839+
734840
<!-- ------------------------------ -->
735841
#### Downloads
736842

@@ -1256,7 +1362,6 @@ To experiment with Fluent overlay scrollbars, in Microsoft Edge, go to `edge://f
12561362

12571363
See also:
12581364
* [WebView2 browser flags](./webview-features-flags.md) - `msEdgeFluentOverlayScrollbar` and `msOverlayScrollbarWinStyle` flags.
1259-
<!-- todo: article to link to? -->
12601365

12611366
##### [.NET/C#](#tab/dotnetcsharp)
12621367

0 commit comments

Comments
 (0)