Internet Explorer на основі управління WPF страждає WebBrowser від деяких клавішних і фокусних питань і проблем витоку пам'яті . Як альтернативне рішення цих проблем, ми розглядаємо доступні варіанти розміщення Chromium замість управління WebBrowser у нашому проекті WPF / C # на основі редагування HTML. Подібні запитання тут задавались і раніше. Я прочитав відповіді та провів власні дослідження, але сподіваюся отримати ще кілька відгуків від людей, які фактично використовували будь-який із наведених нижче варіантів у проектах із якості виробництва :
Це виглядає дуже доречно, але мені не подобається той факт, що проект не є відкритим, і повне джерело не просто доступне. Крім того, це може бути надлишковим для нашого проекту, оскільки поза екранне візуалізація - це не те, від чого ми насправді залежимо.
Вбудовані рамки хрому (CEF) та прив'язки .NET для CEF
Це, мабуть, найкращий доступний варіант. Проект, здається, живий та активний, на даний момент синхронізується з Chrome v27. CEF3 використовує багатопроцесорну архітектуру Chrome. Також схоже, що Adobe надає йому певну підтримку .
Хоча початковою метою було бути плагін HTML5 для IE та Firefox, він насправді також працює як автономний елемент управління ActiveX, тому я міг обернути його для використання з WPF. Він відкриває достатній API для взаємодії з внутрішньою веб-сторінкою ( onmessage, addEventListener/removeEventListener, postMessage
). Мені відомо, що Google повинен припинити Chrome Frame, але я припускаю, що джерела залишаться у сховищі Chromium. Оновити його за допомогою останнього коду Chromium слід не важко, і ми мали б повний контроль над цим.
Не зовсім на основі хрому і не використовується двигун V8, тому це насправді не варіант.
Чи є якийсь інший варіант, який я, можливо, не помітив?
Я був би дуже вдячний, якби хтось поділився своїм досвідом з будь-яким із перерахованих вище варіантів для реального проекту з якості продукції WPF. Чи мали ви якісь наслідки інтеграції, ліцензування чи розгортання? Дякую.
[EDITED] Я також хотів би подякувати artlung за те, що він дав поштовх цьому питанню, надаючи щедру пропозицію багатства.