ChromiumWebBrowser Class |
Namespace: CefSharp.OffScreen
The ChromiumWebBrowser type exposes the following members.
Name | Description | |
---|---|---|
ChromiumWebBrowser(HtmlString, IBrowserSettings, IRequestContext, Boolean, ActionIBrowser, Boolean) |
Create a new OffScreen Chromium Browser. If you use LegacyBindingEnabled = true then you must
set automaticallyCreateBrowser to false and call CreateBrowser(IWindowInfo, IBrowserSettings) after the objects are registered.
The underlying Chromium Embedded Framework(CEF) Browser is created asynchronouly, to subscribe to the BrowserInitialized event it is recommended
that you set automaticallyCreateBrowser to false, subscribe to the event and then call CreateBrowser(IWindowInfo, IBrowserSettings)
to ensure you are subscribe to the event before it's fired (Issue https://github.com/cefsharp/CefSharp/issues/3552).
| |
ChromiumWebBrowser(String, IBrowserSettings, IRequestContext, Boolean, ActionIBrowser, Boolean) |
Create a new OffScreen Chromium Browser. If you use LegacyBindingEnabled = true then you must
set automaticallyCreateBrowser to false and call CreateBrowser(IWindowInfo, IBrowserSettings) after the objects are registered.
The underlying Chromium Embedded Framework(CEF) Browser is created asynchronouly, to subscribe to the BrowserInitialized event it is recommended
that you set automaticallyCreateBrowser to false, subscribe to the event and then call CreateBrowser(IWindowInfo, IBrowserSettings)
to ensure you are subscribe to the event before it's fired (Issue https://github.com/cefsharp/CefSharp/issues/3552).
|
Name | Description | |
---|---|---|
AccessibilityHandler |
Implement IAccessibilityHandler to handle events related to accessibility.
| |
Address |
The address (URL) which the browser control is currently displaying.
Will automatically be updated as the user navigates to another page (e.g. by clicking on a link).
| |
AudioHandler |
Implement IAudioHandler to handle audio events.
| |
BrowserCore |
Get access to the core IBrowser instance.
Maybe null if the underlying CEF Browser has not yet been
created or if this control has been disposed. Check
IsDisposed before accessing.
| |
CanExecuteJavascriptInMainFrame |
A flag that indicates if you can execute javascript in the main frame.
Flag is set to true in IRenderProcessMessageHandler.OnContextCreated.
and false in IRenderProcessMessageHandler.OnContextReleased
| |
CanGoBack |
A flag that indicates whether the state of the control current supports the GoBack action (true) or not (false).
| |
CanGoForward |
A flag that indicates whether the state of the control currently supports the GoForward action (true) or not (false).
| |
DeviceScaleFactor |
Device scale factor. Specifies the ratio between physical and logical pixels.
| |
DialogHandler |
Implement IDialogHandler and assign to handle dialog events.
| |
DisplayHandler |
Implement IDisplayHandler and assign to handle events related to browser display state.
| |
DownloadHandler |
Implement IDownloadHandler and assign to handle events related to downloading files.
| |
DragHandler |
Implement IDragHandler and assign to handle events related to dragging.
| |
FindHandler |
Implement IFindHandler to handle events related to find results.
| |
FocusHandler |
The IFocusHandler for this ChromiumWebBrowser.
| |
FrameHandler |
Implement IFrameHandler to handle frame events.
| |
IsBrowserInitialized |
A flag that indicates whether the WebBrowser is initialized (true) or not (false).
| |
IsDisposed |
Gets a value indicating whether this instance is disposed.
| |
IsLoading |
A flag that indicates whether the control is currently loading one or more web pages (true) or not (false).
| |
JavascriptObjectRepository |
The javascript object repository, one repository per ChromiumWebBrowser instance.
| |
JsDialogHandler |
Implement IJsDialogHandler and assign to handle events related to JavaScript Dialogs.
| |
KeyboardHandler |
Implement IKeyboardHandler and assign to handle events related to key press.
| |
LifeSpanHandler |
Implement ILifeSpanHandler and assign to handle events related to popups.
| |
LoadHandler |
Implement ILoadHandler and assign to handle events related to browser load status.
| |
MenuHandler |
Implement IContextMenuHandler and assign to handle events related to the browser context menu
| |
PermissionHandler |
Implement IPermissionHandler to handle events related to permission requests.
| |
RenderHandler |
Implement IRenderHandler and assign to handle events related to browser rendering.
| |
RenderProcessMessageHandler |
Implement IRenderProcessMessageHandler and assign to handle messages from the render process.
| |
RequestContext |
Gets the request context.
| |
RequestHandler |
Implement IRequestHandler and assign to handle events related to browser requests.
| |
ResourceRequestHandlerFactory |
Implement IResourceRequestHandlerFactory and control the loading of resources
| |
Size |
Get/set the size of the Chromium viewport, in pixels.
This also changes the size of the next rendered bitmap.
| |
TooltipText |
The text that will be displayed as a ToolTip
|
Name | Description | |
---|---|---|
CaptureScreenshotAsync |
Capture page screenshot.
| |
CreateBrowser |
Create the underlying browser. The instance address, browser settings and request context will be used.
| |
CreateBrowserAsync |
Create the underlying CEF browser. The address and request context passed into the constructor
will be used. If a ActionT delegate was passed
into the constructor it will not be called as this method overrides that value internally.
| |
Dispose |
Releases all resources used by the ChromiumWebBrowser object
| |
Dispose(Boolean) |
Releases unmanaged and - optionally - managed resources for the ChromiumWebBrowser | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize |
Finalizes an instance of the ChromiumWebBrowser class.
(Overrides ObjectFinalize.) | |
GetBrowser |
Returns the current CEF Browser Instance
| |
GetContentSizeAsync |
Size of scrollable area in CSS pixels
| |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetScreenInfo |
Gets the screen information (scale factor).
| |
GetScreenPoint |
Called to retrieve the translation from view coordinates to actual screen coordinates.
| |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetViewRect |
Gets the view rect (width, height)
| |
Load |
Loads the specified url in the Main Frame.
If IsDisposed is true then the method call will be ignored.
Same as calling LoadUrl(String) | |
LoadUrl |
Loads the specified url in the Main Frame.
Same as calling Load(String) | |
LoadUrlAsync |
Load the url in the main frame of the browser
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ResizeAsync |
Resize the browser
| |
ScreenshotAsync | Obsolete.
Starts a task that waits for the next rendering from Chrome.
Chrome also renders the page loading, so if you want to see a complete rendering,
only start this task once your page is loaded (which you can detect via FrameLoadEnd
or your own heuristics based on evaluating JavaScript).
It is your responsibility to dispose the returned Bitmap.
The bitmap size is determined by the Size property set earlier.
| |
ScreenshotOrNull |
Immediately returns a copy of the last rendering from Chrome,
or null if no rendering has occurred yet.
Chrome also renders the page loading, so if you want to see a complete rendering,
only start this task once your page is loaded (which you can detect via FrameLoadEnd
or your own heuristics based on evaluating JavaScript).
It is your responsibility to dispose the returned Bitmap.
The bitmap size is determined by the Size property set earlier.
| |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
TryGetBrowserCoreById | ||
WaitForInitialLoadAsync |
Wait for the Browser to finish loading the initial web page.
| |
WaitForNavigationAsync |
This resolves when the browser navigates to a new URL or reloads.
It is useful for when you run code which will indirectly cause the browser to navigate.
A common use case would be when executing javascript that results in a navigation. e.g. clicks a link
This must be called before executing the action that navigates the browser. It may not resolve correctly
if called after.
| |
WaitForRenderIdleAsync |
Waits for the page rendering to be idle for idleTimeInMs.
Rendering is considered to be idle when no Paint events have occured
for idleTimeInMs.
This is useful for scenarios like taking a screen shot.
|
Name | Description | |
---|---|---|
AddressChanged |
Occurs when the browser address changed.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
(The exception to this is when you're running with settings.MultiThreadedMessageLoop = false, then they'll be the same thread).
| |
BrowserInitialized |
Event called after the underlying CEF browser instance has been created.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
(The exception to this is when you're running with settings.MultiThreadedMessageLoop = false, then they'll be the same thread).
| |
ConsoleMessage |
Event handler for receiving Javascript console messages being sent from web pages.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
(The exception to this is when you're running with settings.MultiThreadedMessageLoop = false, then they'll be the same thread).
| |
FrameLoadEnd |
Event handler that will get called when the browser is done loading a frame. Multiple frames may be loading at the same
time. Sub-frames may start or continue loading after the main frame load has ended. This method will always be called
for all frames irrespective of whether the request completes successfully.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
| |
FrameLoadStart |
Event handler that will get called when the browser begins loading a frame. Multiple frames may be loading at the same
time. Sub-frames may start or continue loading after the main frame load has ended. This method may not be called for a
particular frame if the load request for that frame fails. For notification of overall browser load status use
OnLoadingStateChange instead.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
| |
JavascriptMessageReceived |
Event handler that will get called when the message that originates from CefSharp.PostMessage
| |
LoadError |
Event handler that will get called when the resource load for a navigation fails or is canceled.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
| |
LoadingStateChanged |
Event handler that will get called when the Loading state has changed.
This event will be fired twice. Once when loading is initiated either programmatically or
by user action, and once when loading is terminated due to completion, cancellation of failure.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
| |
Paint |
Fired on the CEF UI thread, which by default is not the same as your application main thread.
Called when an element should be painted. Pixel values passed to this method are scaled relative to view coordinates
based on the value of ScreenInfo.DeviceScaleFactor returned from GetScreenInfo.
| |
StatusMessage |
Event handler for changes to the status message.
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang.
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
(The exception to this is when you're running with settings.MultiThreadedMessageLoop = false, then they'll be the same thread).
| |
TitleChanged |
Occurs when [title changed].
It's important to note this event is fired on a CEF UI thread, which by default is not the same as your application UI
thread. It is unwise to block on this thread for any length of time as your browser will become unresponsive and/or hang..
To access UI elements you'll need to Invoke/Dispatch onto the UI Thread.
(The exception to this is when you're running with settings.MultiThreadedMessageLoop = false, then they'll be the same thread).
|
Name | Description | |
---|---|---|
BrowserNotInitializedExceptionErrorMessage |
Name | Description | |
---|---|---|
AddWordToDictionary |
Add the specified word to the spelling dictionary.
(Defined by WebBrowserExtensions.) | |
Back |
Navigates back, must check CanGoBack before calling this method.
(Defined by WebBrowserExtensions.) | |
CloseDevTools |
Explicitly close the developer tools window if one exists for this browser instance.
(Defined by WebBrowserExtensions.) | |
Copy |
Execute Copy on the focused frame.
(Defined by WebBrowserExtensions.) | |
Cut |
Execute Cut on the focused frame.
(Defined by WebBrowserExtensions.) | |
Delete |
Execute Delete on the focused frame.
(Defined by WebBrowserExtensions.) | |
DestroyWindow |
Manually call https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-destroywindow
passing in the handle returned from GetWindowHandle.
This method can be used to manually close the underlying CefBrowser instance.
This will avoid the WM_Close message that CEF sends by default to the top level window.
(Which closes your application). This method should generally only be used in the WinForms version.
(Defined by WebBrowserExtensions.) | |
DisposeDevToolsContext |
Dispose of the DevToolsContext (if any). Used in conjunction with CefSharp.Dom
(Defined by WebBrowserExtensions.) | |
EnsureObjectBoundAsync |
Make sure an object is bound in javascript. Executes against the main frame
(Defined by JavascriptBindingExtensions.) | |
EvaluateScriptAsPromiseAsync |
Evaluate Javascript in the context of the MainFrame of the ChromiumWebBrowser. The script will be executed
asynchronously and the method returns a Task encapsulating the response from the Javascript. The result of the script execution
in javascript is Promise.resolve so even no promise values will be treated as a promise. Your javascript should return a value.
The javascript will be wrapped in an Immediately Invoked Function Expression.
When the promise either trigger then/catch this returned Task will be completed.
(Defined by WebBrowserExtensions.) | |
EvaluateScriptAsync(String, Object) | Overloaded.
Evaluate some Javascript code in the context of this WebBrowser. The script will be executed asynchronously and the method
returns a Task encapsulating the response from the Javascript This simple helper extension will encapsulate params in single
quotes (unless int, uint, etc)
(Defined by WebBrowserExtensions.) | |
EvaluateScriptAsync(NullableTimeSpan, String, Object) | Overloaded.
Evaluate Javascript code in the context of this WebBrowser using the specified timeout. The script will be executed
asynchronously and the method returns a Task encapsulating the response from the Javascript This simple helper extension will
encapsulate params in single quotes (unless int, uint, etc).
(Defined by WebBrowserExtensions.) | |
EvaluateScriptAsync(String, NullableTimeSpan, Boolean) | Overloaded.
Evaluate Javascript in the context of this Browsers Main Frame. The script will be executed
asynchronously and the method returns a Task encapsulating the response from the Javascript
(Defined by WebBrowserExtensions.) | |
EvaluateScriptAsyncT(String, NullableTimeSpan) | Overloaded.
Evaluate Javascript in the context of this Browsers Main Frame. The script will be executed
asynchronously and the method returns a Task encapsulating the response from the Javascript
(Defined by WebBrowserExtensionsEx.) | |
ExecuteDevToolsMethodAsync |
Execute a method call over the DevTools protocol. This is a more structured
version of SendDevToolsMessage. ExecuteDevToolsMethod(IBrowserHost, Int32, String, JsonString) can only be called on the
CEF UI Thread, this method can be called on any thread.
See the DevTools protocol documentation at https://chromedevtools.github.io/devtools-protocol/ for details
of supported methods and the expected parameters dictionary contents.
See the SendDevToolsMessage documentation for additional usage information.
(Defined by DevToolsExtensions.) | |
ExecuteScriptAsync(String) | Overloaded.
Execute Javascript in the context of this Browsers Main Frame. As the method name implies, the script will be executed
asynchronously, and the method therefore returns before the script has actually been executed.
(Defined by WebBrowserExtensions.) | |
ExecuteScriptAsync(String, Object) | Overloaded.
Execute Javascript code in the context of this Browser. As the method name implies, the script will be executed
asynchronously, and the method therefore returns before the script has actually been executed. This simple helper extension
will encapsulate params in single quotes (unless int, uint, etc)
(Defined by WebBrowserExtensions.) | |
ExecuteScriptAsyncWhenPageLoaded |
Execute Javascript code in the context of this Browsers Main Frame. This extension method uses the LoadingStateChanged event. As the
method name implies, the script will be executed asynchronously, and the method therefore returns before the script has
actually been executed.
(Defined by WebBrowserExtensions.) | |
Find |
Search for text within the current page.
(Defined by WebBrowserExtensions.) | |
Forward |
Navigates forward, must check CanGoForward before calling this method.
(Defined by WebBrowserExtensions.) | |
FreeDevToolsContext |
Set the DevToolsContext property to null. Used in conjunction with CefSharp.Dom
(Defined by WebBrowserExtensions.) | |
GetBrowserHost |
Shortcut method to get the browser IBrowserHost.
(Defined by WebBrowserExtensions.) | |
GetCookieManager |
Gets the default cookie manager associated with the IChromiumWebBrowserBase instance.
(Defined by WebBrowserExtensions.) | |
GetDevToolsClient |
Gets a new Instance of the DevTools client for the chromiumWebBrowser
instance.
(Defined by DevToolsExtensions.) | |
GetFocusedFrame |
Returns the focused frame for the browser window.
(Defined by WebBrowserExtensions.) | |
GetMainFrame |
Returns the main (top-level) frame for the browser window.
(Defined by WebBrowserExtensions.) | |
GetRequestContext |
Gets the RequestContext associated with the IChromiumWebBrowserBase instance.
(Defined by WebBrowserExtensions.) | |
GetSourceAsync |
Retrieve the main frame's HTML source using a TaskTResult.
(Defined by WebBrowserExtensions.) | |
GetTextAsync |
Retrieve the main frame's display text using a TaskTResult.
(Defined by WebBrowserExtensions.) | |
GetVisibleNavigationEntryAsync | (Defined by WebBrowserExtensionsEx.) | |
GetZoomLevelAsync |
Asynchronously gets the current Zoom Level.
(Defined by WebBrowserExtensions.) | |
LoadHtml(String, String) | Overloaded.
Registers and loads a ResourceHandler that represents the HTML content.
(Defined by WebBrowserExtensions.) | |
LoadHtml(String, Boolean) | Overloaded.
Loads html as Data Uri See https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs for details If
base64Encode is false then html will be Uri encoded.
(Defined by WebBrowserExtensions.) | |
LoadHtml(String, String, Encoding, Boolean) | Overloaded.
Registers and loads a ResourceHandler that represents the HTML content.
(Defined by WebBrowserExtensions.) | |
LoadUrlWithPostData |
Creates a new instance of IRequest with the specified Url and Method = POST and then calls
LoadRequest(IRequest).
(Defined by WebBrowserExtensions.) | |
Paste |
Execute Paste on the focused frame.
(Defined by WebBrowserExtensions.) | |
Opens a Print Dialog which if used (can be user cancelled) will print the browser contents.
(Defined by WebBrowserExtensions.) | ||
PrintToPdfAsync |
Asynchronously prints the current browser contents to the PDF file specified. The caller is responsible for deleting the file
when done.
(Defined by WebBrowserExtensions.) | |
Redo |
Execute Redo on the focused frame.
(Defined by WebBrowserExtensions.) | |
RegisterAsyncJsObject | Asynchronously registers a Javascript object in this specific browser instance. Only methods of the object will be availabe. | |
RegisterJsObject |
Registers a Javascript object in this specific browser instance.
(Defined by WebBrowserExtensions.) | |
RegisterResourceHandler |
Register a ResourceHandler. Can only be used when browser.ResourceHandlerFactory is an instance of
DefaultResourceHandlerFactory.
(Defined by WebBrowserExtensions.) | |
Reload | Overloaded.
Reloads the page being displayed. This method will use data from the browser's cache, if available.
(Defined by WebBrowserExtensions.) | |
Reload(Boolean) | Overloaded.
Reloads the page being displayed, optionally ignoring the cache (which means the whole page including all .css, .js etc.
resources will be re-fetched).
(Defined by WebBrowserExtensions.) | |
ReplaceMisspelling |
If a misspelled word is currently selected in an editable node calling this method will replace it with the specified word.
(Defined by WebBrowserExtensions.) | |
SelectAll |
Execute SelectAll on the focused frame.
(Defined by WebBrowserExtensions.) | |
SendMouseWheelEvent |
Send a mouse wheel event to the browser.
(Defined by WebBrowserExtensions.) | |
SetAsPopup |
An IWebBrowser extension method that sets the HasParent
property used when passing a ChromiumWebBrowser instance to OnBeforePopup(IWebBrowser, IBrowser, IFrame, String, String, WindowOpenDisposition, Boolean, IPopupFeatures, IWindowInfo, IBrowserSettings, Boolean, IWebBrowser) (Defined by WebBrowserExtensions.) | |
SetMainFrameDocumentContentAsync |
Set the Document Content for the Main Frame using DevTools Protocol.
(Defined by DevToolsExtensions.) | |
SetZoomLevel |
Change the ZoomLevel to the specified value. Can be set to 0.0 to clear the zoom level.
(Defined by WebBrowserExtensions.) | |
ShowDevTools |
Open developer tools in its own window.
(Defined by WebBrowserExtensions.) | |
ShowDevToolsDocked(ActionChromiumHostControl, String, DockStyle, Int32, Int32) | Overloaded.
Open DevTools using your own Control as the parent. If inspectElementAtX and/or inspectElementAtY are specified then
the element at the specified (x,y) location will be inspected.
For resize/moving to work correctly you will need to use the LifeSpanHandler implementation.
(Set LifeSpanHandler to an instance of LifeSpanHandler)
(Defined by WebBrowserExtensions.) | |
ShowDevToolsDocked(Control, String, DockStyle, Int32, Int32) | Overloaded.
Open DevTools using parentControl as the parent control. If inspectElementAtX and/or inspectElementAtY are specified then
the element at the specified (x,y) location will be inspected.
For resize/moving to work correctly you will need to use the LifeSpanHandler implementation.
(Set LifeSpanHandler to an instance of LifeSpanHandler)
(Defined by WebBrowserExtensions.) | |
StartDownload |
Download the file at url using IDownloadHandler.
(Defined by WebBrowserExtensions.) | |
Stop |
Stops loading the current page.
(Defined by WebBrowserExtensions.) | |
StopFinding |
Cancel all searches that are currently going on.
(Defined by WebBrowserExtensions.) | |
ToggleAudioMute |
Toggles audio mute for the current browser.
If the browser is null or has been disposed
then this command will be a no-op.
(Defined by WebBrowserExtensionsEx.) | |
Undo |
Execute Undo on the focused frame.
(Defined by WebBrowserExtensions.) | |
UnRegisterResourceHandler |
Unregister a ResourceHandler. Can only be used when browser.ResourceHandlerFactory is an instance of
DefaultResourceHandlerFactory.
(Defined by WebBrowserExtensions.) | |
ViewSource |
Opens up a new program window (using the default text editor) where the source code of the currently displayed web page is
shown.
(Defined by WebBrowserExtensions.) | |
WaitForSelectorAsync |
Waits for a DOM element specified by the selector string to be added to or removed from the DOM.
A simplified version of Puppeteer WaitForSelector. Uses a MutationObserver to wait for the element to become added or removed.
(Defined by WebBrowserExtensions.) |