DotNetBrowser

Last updated
DotNetBrowser
Developer(s) TeamDev
Initial release6 April 2015;9 years ago (2015-04-06)
Stable release
2.27.1 [1]   OOjs UI icon edit-ltr-progressive.svg / 30 May 2024
Written in C#, C++
Operating system Microsoft Windows, Linux, macOS
Type Framework, Web browser
License Proprietary [2]
Website https://teamdev.com/dotnetbrowser

DotNetBrowser is a proprietary .NET library that provides a Chromium-based engine which can be used to load and display web pages. [3] [4] [5] It is developed and supported by TeamDev since 2015.

Contents

Features

Some main features are as follows:

Usage

Primary usage is embedding a browser into various .NET desktop applications and displaying the web pages. [10] DotNetBrowser can be used as a headless browser. The headless mode is also available on Linux and macOS.

Another known use-cases are creating web-based kiosk applications [11] and VSTO add-ins for Microsoft Office. [12]

More examples and use-cases are available in the DotNetBrowser Examples repository.

Example

WPF

XAML markup

<Windowx:Class="Sample.Wpf.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:wpf="clr-namespace:DotNetBrowser.Wpf;assembly=DotNetBrowser.Wpf"mc:Ignorable="d"Title="MainWindow"Height="450"Width="800"Closed="MainWindow_OnClosed"><Grid><wpf:BrowserViewx:Name="browserView"/></Grid></Window>

C#

usingSystem;usingSystem.WindowsusingDotNetBrowser.Browser;usingDotNetBrowser.Engine;namespaceSample.Wpf;publicpartialclassMainWindow:Window{privatereadonlyIEngine_engine;privatereadonlyIBrowser_browser;publicMainWindow(){InitializeComponent();// Create and initialize the IEngine_engine=EngineFactory.Create();// Create the IBrowser_browser=engine.CreateBrowser();_browser.Navigation.LoadUrl("https://teamdev.com/dotnetbrowser");// Initialize the WPF BrowserView controlbrowserView.InitializeFrom(browser);}privatevoidMainWindow_OnClosed(objectsender,EventArgse){_browser.Dispose();_engine.Dispose();}}

Windows Forms

C#

usingSystem;usingSystem.Windows.Forms;usingDotNetBrowser.Browser;usingDotNetBrowser.Engine;usingDotNetBrowser.WinForms;namespaceSample.WinForms;publicpartialclassForm1:Form{privatereadonlyIEngine_engine;privatereadonlyIBrowser_browser;publicForm1(){InitializeComponent();// Create and initialize the IEngine_engine=EngineFactory.Create();// Create the Windows Forms BrowserView controlvarbrowserView=newBrowserView{Dock=DockStyle.Fill};// Create the IBrowser_browser=engine.CreateBrowser();_browser.Navigation.LoadUrl("https://teamdev.com/dotnetbrowser");// Initialize the Windows Forms BrowserView controlbrowserView.InitializeFrom(browser);// Add the BrowserView control to the FormControls.Add(browserView);Closed+=Form1Closed;}privatevoidForm1Closed(objectsender,EventArgse){_browser.Dispose();_engine.Dispose();}}

See also

Related Research Articles

Vector Markup Language (VML) is an obsolete XML-based file format for two-dimensional vector graphics. It was specified in Part 4 of the Office Open XML standards ISO/IEC 29500 and ECMA-376. According to the specification, VML is a deprecated format included in Office Open XML for legacy reasons only.

<span class="mw-page-title-main">Browser wars</span> Competition between web browsing applications for share of worldwide usage

A browser war is a competition for dominance in the usage share of web browsers. The "first browser war" (1995–2001) consisted of Internet Explorer and Netscape Navigator, and the "second browser war" (2004-2017) between Internet Explorer, Firefox, and Google Chrome.

Extensible Application Markup Language is a declarative XML-based language developed by Microsoft for initializing structured values and objects. It is available under Microsoft's Open Specification Promise.

<span class="mw-page-title-main">Windows Forms</span> Graphical user interface software library

Windows Forms (WinForms) is a free and open-source graphical (GUI) class library included as a part of Microsoft .NET, .NET Framework or Mono, providing a platform to write client applications for desktop, laptop, and tablet PCs. While it is seen as a replacement for the earlier and more complex C++ based Microsoft Foundation Class Library, it does not offer a comparable paradigm and only acts as a platform for the user interface tier in a multi-tier solution.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

Windows Presentation Foundation (WPF) is a free and open-source user interface framework for Windows-based desktop applications. WPF applications are based in .NET, and are primarily developed using C# and XAML.

<span class="mw-page-title-main">ClickOnce</span>

ClickOnce is a component of Microsoft .NET Framework 2.0 and later, and supports deploying applications made with Windows Forms or Windows Presentation Foundation. It is similar to Java Web Start for the Java Platform or Zero Install for Linux.

Catalogue Service for the Web (CSW), sometimes seen as Catalogue Service - Web, is a standard for exposing a catalogue of geospatial records in XML on the Internet. The catalogue is made up of records that describe geospatial data, geospatial services, and related resources.

Layout managers are software components used in widget toolkits which have the ability to lay out graphical control elements by their relative positions without using distance units. It is often more natural to define component layouts in this manner than to define their position in pixels or common distance units, so a number of popular widget toolkits include this ability by default. Widget toolkits that provide this function can generally be classified into two groups:

<span class="mw-page-title-main">Microsoft Silverlight</span> Application framework for writing and running rich Internet applications

Microsoft Silverlight is a discontinued application framework designed for writing and running rich internet applications, similar to Adobe's runtime, Adobe Flash. While early versions of Silverlight focused on streaming media, later versions supported multimedia, graphics, and animation, and gave support to developers for CLI languages and development tools. Silverlight was one of the two application development platforms for Windows Phone, but web pages using Silverlight did not run on the Windows Phone or Windows Mobile versions of Internet Explorer, as there was no Silverlight plugin for Internet Explorer on those platforms.

The Open Packaging Conventions (OPC) is a container-file technology initially created by Microsoft to store a combination of XML and non-XML files that together form a single entity such as an Open XML Paper Specification (OpenXPS) document. OPC-based file formats combine the advantages of leaving the independent file entities embedded in the document intact and resulting in much smaller files compared to normal use of XML.

XAML Browser Applications are Windows Presentation Foundation (.xbap) applications that were intended to run inside a web browser such as Firefox or Internet Explorer through the NPAPI interface. Due to NPAPI being phased out in recent years, and from lack of support, there are currently no browsers that support XBAP applications.

Animation of Scalable Vector Graphics, an open XML-based standard vector graphics format is possible through various means:

Model–view–viewmodel (MVVM) is an architectural pattern in computer software that facilitates the separation of the development of a graphical user interface —be it via a markup language or GUI code—from the development of the business logic or back-end logic such that the view is not dependent upon any specific model platform.

Microsoft Silverlight is an application framework for writing and running rich web applications that was actively developed and marketed by Microsoft from 2007 to 2012. This is a technical overview of the platform's history.

Windows UI Library is a user interface API that is part of the Windows Runtime programming model that forms the backbone of Universal Windows Platform apps for the Windows 8, Windows 8.1, Windows 10 and Windows Phone 8.1 operating systems. It enables declaring user interfaces using Extensible Application Markup Language (XAML) technology.

<span class="mw-page-title-main">Business Intelligence Markup Language</span>

BusinessIntelligence Markup Language (BIML) is a domain-specific XML dialect for defining business intelligence (BI) assets. Biml-authored BI assets can currently be used by the BIDS Helper add-on for Microsoft SQL Server Business Intelligence Development Studio (BIDS) and the Varigence Mist integrated development environment; both tools translate Biml metadata into SQL Server Integration Services (SSIS) and SQL Server Analysis Services (SSAS) assets for the Microsoft SQL Server platform; however, emitters can be created to compile Biml for any desired BI platform.

<span class="mw-page-title-main">Windows App SDK</span> Software development kit from Microsoft

Windows App SDK is a software development kit (SDK) from Microsoft that provides a unified set of APIs and components that can be used to develop desktop applications for both Windows 11 and Windows 10 version 1809 and later. The purpose of this project is to offer a decoupled implementation of capabilities which were previously tightly-coupled to the UWP app model. Windows App SDK allows native Win32 (USER32/GDI32) or .NET (WPF/WinForms) developers alike a path forward to enhance their apps with modern features.

References

  1. https://teamdev.com/dotnetbrowser/release-notes/2024/v2-27-1.html.{{cite web}}: Missing or empty |title= (help)
  2. "DotNetBrowser Product Licence Agreement". TeamDev. Retrieved 12 March 2021.
  3. "DotNetBrowser on StackOverflow" . Retrieved 14 March 2021.
  4. "DotNetBrowser on NuGet" . Retrieved 14 March 2021.
  5. "c # - i want to get location information with dotnetbrowser".
  6. "Chromium Web Browser Control in .NET Applications". DZone. Archived from the original on 2021-05-19. Retrieved 2021-05-19.
  7. "DotNetBrowser and invalid external method call". 13 June 2020.
  8. "Using dotnetbrowser to call JavaScript function to c#". 14 June 2018.
  9. "The mutual call between the JS code of the DotNetBrowser internal page and the external C# code". Archived from the original on 2021-05-19. Retrieved 2021-05-19.
  10. "Creating an HTML UI for Desktop .NET Applications". InfoQ. Retrieved 12 March 2021.
  11. Mihika Kapoor (2 July 2016). "Frame Building with C# and VB.NET". medium.com. Retrieved 17 May 2021.
  12. "Using VSTO to develop Word AddIn, is there a third-party kernel that can replace webbrowser?". Archived from the original on 21 May 2021. Retrieved 21 May 2021.