Английская Википедия:DotNetBrowser
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
DotNetBrowser is a proprietary .NET library that provides a Chromium-based engine which can be used to load and display web pages.[1] [2][3] It is developed and supported by TeamDev since 2015.
Features
Some main features are as follows:
- Load and display the web page.
- Embed a Chromium-based browser in a .NET desktop application as an Avalonia UI, WPF or Windows Forms control.[4]
- Handle navigation and network events.
- Access Document Object Model of the loaded web page.
- Execute JavaScript on the loaded web page, inject .NET objects and call them from JavaScript[5][6][7]
Usage
Primary usage is embedding a browser into various .NET desktop applications and displaying the web pages.[8] 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[9] and VSTO add-ins for Microsoft Office.[10]
More examples and use-cases are available in the DotNetBrowser Examples repository.
Example
WPF
XAML markup
<Window x: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:BrowserView x:Name="browserView"/>
</Grid>
</Window>
C#
using System;
using System.Windows
using DotNetBrowser.Browser;
using DotNetBrowser.Engine;
namespace Sample.Wpf;
public partial class MainWindow : Window
{
private readonly IEngine _engine;
private readonly IBrowser _browser;
public MainWindow()
{
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 control
browserView.InitializeFrom(browser);
}
private void MainWindow_OnClosed(object sender, EventArgs e)
{
_browser.Dispose();
_engine.Dispose();
}
}
Windows Forms
C#
using System;
using System.Windows.Forms;
using DotNetBrowser.Browser;
using DotNetBrowser.Engine;
using DotNetBrowser.WinForms;
namespace Sample.WinForms;
public partial class Form1 : Form
{
private readonly IEngine _engine;
private readonly IBrowser _browser;
public Form1()
{
InitializeComponent();
// Create and initialize the IEngine
_engine = EngineFactory.Create();
// Create the Windows Forms BrowserView control
var browserView = new BrowserView
{
Dock = DockStyle.Fill
};
// Create the IBrowser
_browser = engine.CreateBrowser();
_browser.Navigation.LoadUrl("https://teamdev.com/dotnetbrowser");
// Initialize the Windows Forms BrowserView control
browserView.InitializeFrom(browser);
// Add the BrowserView control to the Form
Controls.Add(browserView);
Closed += Form1Closed;
}
private void Form1Closed(object sender, EventArgs e)
{
_browser.Dispose();
_engine.Dispose();
}
}
See also
References
External links
- Шаблон:Official website
- Шаблон:Citation - the DotNetBrowser support website containing documentation and release notes.
- Шаблон:Citation - the repository containing various examples of using DotNetBrowser.