Il controllo WPF WebBrowser basato su Internet Explorer soffre di alcuni problemi relativi alla tastiera, allo stato attivo e alla perdita di memoria . Come soluzione alternativa a questi problemi, stiamo prendendo in considerazione le opzioni disponibili per l'hosting di Chromium anziché il controllo WebBrowser nel nostro progetto WPF / C # basato sull'editing HTML. Domande simili sono state poste qui in precedenza. Ho letto le risposte e fatto le mie ricerche, ma spero di ottenere qualche feedback in più dalle persone che hanno effettivamente utilizzato una delle seguenti opzioni in progetti di qualità di produzione :
Sembra molto appropriato, ma non mi piace il fatto che il progetto non sia open source e la fonte completa non sia facilmente disponibile. Inoltre, potrebbe essere eccessivo per il nostro progetto, poiché il rendering fuori schermo non è qualcosa da cui dipendiamo veramente.
Chromium Embedded Framework (CEF) e attacchi .NET per CEF
Questa è probabilmente l'opzione migliore attualmente disponibile. Il progetto sembra essere vivo e attivo, essendo attualmente sincronizzato con Chrome v27. CEF3 utilizza l'architettura multi-processo di Chrome. Sembra anche che Adobe stia dando un certo sostegno .
Mentre lo scopo originale era di essere un plug-in HTML5 per IE e Firefox, in realtà funziona anche come controllo ActiveX autonomo, quindi potrei avvolgerlo per l'uso con WPF. Espone un'API sufficiente per l'interazione con la pagina Web interna ( onmessage, addEventListener/removeEventListener, postMessage
). Sono consapevole che Google interromperà Chrome Frame, ma suppongo che le fonti rimarranno nel repository Chromium. Non dovrebbe essere difficile aggiornarlo con l'ultimo codice Chromium mentre procediamo e avremmo il pieno controllo su questo.
Non esattamente basato su Chromium e non utilizza il motore V8, quindi non è davvero un'opzione.
C'è qualche altra opzione che avrei potuto trascurare?
Gradirei molto se qualcuno condividesse la sua esperienza con una qualsiasi delle opzioni di cui sopra per un progetto WPF nella vita reale e di qualità di produzione. Hai avuto implicazioni per l'integrazione, le licenze o la distribuzione? Grazie.
[EDITED] Vorrei anche ringraziare artlung per aver dato una spinta a questa domanda fornendo una generosa offerta di ricompensa.