Использовать веб-страницу в качестве пользовательского интерфейса в настольном приложении С#?
Я создаю настольное приложение С# с простым пользовательским интерфейсом. Из-за моего знакомства с HTML/CSS и предыдущей веб-итерации очень похожего приложения было бы идеально, если бы я мог повторно использовать некоторые существующие HTML/CSS-страницы, которые у меня есть в качестве интерфейса для этого нового приложения для настольных компьютеров.
Это возможно с С#? Может ли кто-нибудь показать простой пример использования страницы HTML/CSS в качестве пользовательского интерфейса рабочего стола С#?
Ответы
Ответ 1
Другие ответы датированы, новые хорошие варианты:
- Neutronium - Просто представление HTML/JS/CSS для приложения .NET требует архитектуры приложений MVVM (WPF), Лучше всего для уже написанных приложений .NET, которые могут использовать интерфейс HTML/JS/CSS.
- Electron + Electron-Edge - Перекресток -платформенная платформа для платформы HTML/JS/CSS + интерфейс к .NET-коду. Лучше всего для новых приложений Electron, которым нужны только некоторые вызовы .NET.
Ответ 2
CefSharp (https://github.com/cefsharp/CefSharp) - хороший способ вставить хром, но вам все равно нужен веб-сервер. Посмотрите http://www.ultidev.com/products/Cassini/ на альтернативу для IIS.
Ответ 3
Вы можете использовать элемент управления WebBrowser
для добавления функций веб-браузера в ваше приложение.
Вы можете создать свой собственный html и установить свой WebBrowser
элемент управления для отображения этих страниц. Вы можете перемещаться по гиперссылкам или с помощью сочетаний клавиш для перемещения назад и вперед по истории навигации. По умолчанию вы можете получить доступ к дополнительным функциям браузера через контекстное меню правой кнопки мыши
Вы даже можете управлять этими страницами централизованно (например, в локальной сети), и все клиенты в локальной сети могут подключаться к этому центральному местоположению. Таким образом вы можете изменять страницы по центру.
Проверьте пошаговое руководство по MSDN:
Как добавить возможности веб-браузера в приложение Windows Forms
Ответ 4
Вы можете попытаться использовать элемент управления на основе хрома - DotNetBrowser. Этот элемент управления предоставляет широкие возможности интерактивности, такие как DOM-манипуляция и события DOM, которые могут быть полезны в вашем случае.
Кроме того, есть статья, демонстрирующая, как использовать веб-страницу в качестве HTML-интерфейса в рабочем приложении С#: https://www.infoq.com/articles/html-desktop-net
Раскрытие информации о филиале: я работаю с командой, которая создала DotNetBrowser.
Ответ 5
К сожалению, ни WinForms, ни WPF достаточно похожи на HTML/CSS для такого использования. Конечно, вы сможете повторно использовать макеты-концепции и искусство. И, если WPF будет ближе всего к ней, вы можете даже сохранить код кода.
Но короткий ответ: No
Ответ 6
Вы можете попробовать добавить элемент управления веб-браузера в приложение формы, чтобы показать свою страницу. Но это нужно будет удаленно размещать, поскольку код не сможет выполнять локально, за исключением случаев, когда вы прослушиваете конкретные ссылки в С#, а затем выполняете действия.
Вы также можете попробовать свои силы в WPF, который является новой технологией для создания привлекательного GUI с надписью, похожей на html, которую вы быстро найдете в своем html-приложении.