Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 18379|Respuesta: 1

[WinForm] Controles similares a los de navegador web

[Copiar enlace]
Publicado en 26/2/2016 15:05:52 | | |

Ahora, usando el navegador web, ponlo en un hilo independiente; al cargar la página, el programa seguirá atascado, no responde, no será insensible, y el uso de la CPU se disparará hasta el 30%.
No se queda atascado cuando la página web no carga.

Además, usar InvokeMember("Click") para simular el clic en algunos enlaces es inválido, y el punto de interrupción puede ir al HtmlElement correcto, pero el clic simulado no responde.

No todos los clics son inválidos, solo algunos botones o enlaces no lo son.


¿Hay alguna forma de resolver los problemas anteriores?
Si no, ¿existe algún control de terceros que consuma menos CPU, que permita asignar valores a los cuadros de texto, simular clics y operar barras de desplazamiento?

WebKit .NET
Webkit-sharp
CefSharp
awesomium
OpenWebKitSharp
geckofx
MozNET Web Component





Anterior:¿Cuál es más potente, el kernel del navegador Gecko o WebKit?
Próximo:WebKit.net la solución a la excepción WebKitBrowser.dll
 Propietario| Publicado en 26/2/2016 15:29:06 |
Si es eso, es sencillo, pero la web que usa el proyecto tiene una compatibilidad extremadamente pobre con IE (queja: personalmente creo que IE es una lástima y el soporte para estándares es muy pobre), así que no tuve más remedio que buscar otros controles similares para navegador web y encontré algunos buenos controles de reemplazo:

GeokoFx: Paquete de formularios para Windows para Firefox Geoko Engine, descarga en Google Dirección: http://code.google.com/p/geckofx/ Página oficial: http://www.geckofx.org/
WebKit.NET:webkit的.NET封装,下载地址:http://sourceforge.net/projects/webkitdotnet/

Originalmente decidí usar GeokoFx, porque la web que usa el proyecto se abre muy rápido con Firefox, pero busqué durante unos días y no descubrí cómo pasar un objeto js al control; cuando descubrí que el control webbroswer de Qt también es un control encapsulado de WebKit, decidí usar WebKit, pero no WebKit.NET proporcionaba directamente una forma de pasar el objeto, y luego encontré otra cosa buena:

open-webkit-sharp:对webkit.net的又一次封装,提供了很多新功能。google上下载地址:http://code.google.com/p/open-webkit-sharp/
Lo siguiente es muy sencillo: descarga open-webkit-sharp, copia todos los archivos de la carpeta Core y la carpeta References al directorio de tu proyecto, luego abre tu proyecto y añade el OpenWebKitSharp.dll de referencia y WebKit.Interop.dll (si tu proyecto se ejecuta en .NET Framework 2.0 o 3.5 referencias Binary_ Estos dos archivos en la carpeta NET2, en el caso de NET4.0, hacen referencia a estas dos dlls en la carpeta Binary); Luego está la Caja de herramientas - > Selecciones - > OpenWebKitSharp.dll de selección y arrastra WebKitBrowser desde la Caja de herramientas a tu formulario. Ahora es un gran paso, pero para evitar todo tipo de errores al usarlo, primero necesitamos instalar dos archivos de apoyo:
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com