DotNetBrowser
| DotNetBrowser | |
|---|---|
| Тип | Framework, Браузер |
| Разработчик | TeamDev |
| Написана на | C#, C++ |
| Операционная система | Windows |
| Аппаратные платформы | Windows[3], Linux[4] и macOS[4] |
| Последняя версия | 2.15.1 (17 июня 2022) |
| Тестовая версия | |
| Лицензия | TeamDev [2] |
| Сайт | teamdev.com/dotnetbrowser |
DotNetBrowser — проприетарная .NET библиотека, основанная на Chromium. Предоставляет программно управляемый браузерный движок, который можно использовать для встраивания Chromium в приложения, загрузки и отображения страниц.[5] [6][7] Разрабатывается и поддерживается TeamDev с 2015 года.
Функциональность
Основными функциями библиотеки являются:
- Загрузка и отображение веб-страниц.
- Встраивание браузера в .NET приложения, написанные на WPF или Windows Forms.[8]
- Обработка событий навигации и событий обмена данными с сервером.
- Доступ к DOM загруженной страницы, включая поиск и изменение элементов.
- Выполнение JavaScript на загруженной странице, возможность работы с JavaScript объектами из .NET и с .NET объектами из JavaScript[9][10][11]
Использование
Наиболее часто распространенный вариант использования библиотеки — это встраивание браузера в различные .NET приложения для отображения веб-страниц и работы с ними.[12] DotNetBrowser также можно использовать без вывода на экран в консольных или серверных приложениях.
Другие популярные варианты использования включают создание web-based приложений для информационных киосков и киосков самообслуживания[13] и надстроек VSTO для приложений Microsoft Office.[14]
Другие варианты и примеры использования описаны в репозитории DotNetBrowser Examples.
Примеры встраивания
WPF
Разметка XAML
<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();
// Создаем и инициализируем IEngine
engine = EngineFactory.Create();
// Создаем IBrowser
browser = engine.CreateBrowser();
browser.Navigation.LoadUrl("https://teamdev.com/dotnetbrowser");
// Инициализируем элемент управления WPF BrowserView
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();
// Создаем и инициализируем IEngine
engine = EngineFactory.Create();
// Создаем элемент управления Windows Forms BrowserView
BrowserView browserView = new BrowserView() {
Dock = DockStyle.Fill
};
// Создаем IBrowser
browser = engine.CreateBrowser();
browser.Navigation.LoadUrl("https://teamdev.com/dotnetbrowser");
// Инициализируем Windows Forms BrowserView
browserView.InitializeFrom(browser);
// Добавляем элемент управления BrowserView на форму
Controls.Add(browserView);
Closed += Form1Closed;
}
private void Form1Closed(object sender, EventArgs e) {
browser.Dispose();
engine.Dispose();
}
}
}
См. также
Примечания
- ↑ https://dotnetbrowser-support.teamdev.com/release-notes/2015/v1-0.html
- ↑ DotNetBrowser Product Licence Agreement. TeamDev. TeamDev. Дата обращения: 12 июля 2021. Архивировано 15 июня 2021 года.
- ↑ https://dotnetbrowser-support.teamdev.com/roadmap/
- ↑ 1 2 https://dotnetbrowser-support.teamdev.com/release-notes/2022/v2-17.html
- ↑ DotNetBrowser на StackOverflow. Дата обращения: 12 июля 2021. Архивировано 14 июня 2021 года.
- ↑ DotNetBrowser на NuGet. Дата обращения: 12 июля 2021. Архивировано 19 мая 2021 года.
- ↑ c # - i want to get location information with dotnetbrowser. Дата обращения: 14 июля 2021. Архивировано 19 мая 2021 года.
- ↑ Chromium Web Browser Control in .NET Applications. DZone. Дата обращения: 14 июля 2021. Архивировано 19 мая 2021 года.
- ↑ DotNetBrowser and invalid external method call. Дата обращения: 14 июля 2021. Архивировано 19 мая 2021 года.
- ↑ Using dotnetbrowser to call JavaScript function to c#.
- ↑ The mutual call between the JS code of the DotNetBrowser internal page and the external C# code. Дата обращения: 14 июля 2021. Архивировано 19 мая 2021 года.
- ↑ Creating an HTML UI for Desktop .NET Applications. InfoQ. InfoQ. Дата обращения: 12 июля 2021. Архивировано 19 мая 2021 года.
- ↑ Frame Building with C# and VB.NET. medium.com. Дата обращения: 12 июля 2021. Архивировано 17 мая 2021 года.
- ↑ Using VSTO to develop Word AddIn, is there a third-party kernel that can replace webbrowser? Дата обращения: 12 июля 2021. Архивировано 21 мая 2021 года.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.