2008-08-25 30 views
66

Tôi rất muốn biết nếu có một điều như một Gecko.NET;) Tôi có nghĩa là, giống như chúng ta có thể nhúng một WebView và đó là một "cá thể" của IE7 bên trong bất kỳ ứng dụng Windows Forms nào (và yêu cầu nó navigateto(fancy_url);). Tôi rất thích sử dụng Firefox hoặc WebKit.Có thể nhúng Gecko hoặc Webkit trong một Biểu mẫu Windows giống như một WebView không?

Bất kỳ ai đã thử điều này?

CẬP NHẬT: Hãy nhớ rằng mặc dù nó có thể nhúng Gecko sử dụng các điều khiển đã đề cập, nó vẫn không thể in khi sử dụng Gecko.

CẬP NHẬT Tháng Ba 2010: Nó vẫn không thể in natively sử dụng GeckoFX, tuy nhiên một vài phương pháp tồn tại mà thể là đủ, phụ thuộc vào những gì bạn đang cố gắng làm. Xem: http://geckofx.org/viewtopic.php?id=796 để biết thêm thông tin.

CẬP NHẬT tháng 10 năm 2013: Tôi không còn làm phát triển Windows vì vậy tôi đã không quan tâm đến điều này, nhưng có vẻ như sự phát triển của Gecko có thể được tìm thấy ở đây: https://bitbucket.org/geckofx và nó dường như được cập nhật gần đây. Để điều này ở đây cho các nhà phát triển Windows trong tương lai;)

CẬP NHẬT Tháng 1 năm 2017: Tôi đã nhận được email từ một công ty có tên là TeamDev. Họ đã tạo thành phần trình duyệt .NET dựa trên Chromium có tên là "DotNetBrowser" có thể được sử dụng để hiển thị các trang web hiện đại trong các ứng dụng Windows Forms.

Để trích dẫn email trực tiếp:

Dưới đây là một số chi tiết về thành phần, trong đó có thể hữu ích:

  1. DotNetBrowser được dựa trên Chromium, do đó hỗ trợ HTML5, CSS3, JS và các tiêu chuẩn web mới nhất. Phiên bản Chromium cơ bản của thư viện được cập nhật thường xuyên.
  2. Thành phần này phù hợp với WPF cũng như các ứng dụng Windows Forms dành cho máy tính để bàn và hoạt động cả cho C# và VB.NET.
  3. Thư viện được cấp phép thương mại, tuy nhiên giấy phép miễn phí được cung cấp cho các dự án nguồn mở và học tập.

Disclaimer:tôi đã không sử dụng DotNetBrowser này cho tôi không còn làm phát triển của Windows nhưng có thể giá trị kiểm tra nếu bạn đang tìm kiếm một giải pháp cho việc này.

Trả lời

10

Chắc chắn là có thể. Tất cả bạn cần làm là đăng ký kiểm soát Mozilla ActiveX (mozctlx.dll tôi tin), và bạn có thể kéo nó vào biểu mẫu của bạn như bất kỳ điều khiển ActiveX nào. Giao diện lập trình tương tự (mặc dù không giống hệt) với trình duyệt IE và thậm chí bạn có thể sử dụng thư viện được quản lý Microsoft.MSHTML.dll để kiểm soát trong một số trường hợp.

Tôi tin rằng điều này được đóng gói với Firefox. Nếu không, bạn cũng có thể nhận được các bit có thể nhúng từ Mozilla. Chỉ cần thực hiện tìm kiếm của Google cho điều khiển Mozilla ActiveX hoặc Mozilla Nhúng C# và điều đó sẽ đưa bạn xuống con đường bên phải.

+1

Câu trả lời dưới đây sẽ là câu trả lời. GeckoFX là một trình bao bọc .NET được cập nhật, điều khiển ActiveX chưa được cập nhật kể từ năm 2005. – Sire

1

Ngoài ra, nếu bạn thấy mình sử dụng Gtk thay vì Windows.Các biểu mẫu, có một tarball của webkit-sharp có sẵn cho phép dễ dàng nhúng các WebView vào các ứng dụng Gtk #.

3

@Martin: Vâng, phiên bản Adam Locke đã lỗi thời. Nhưng đó là bởi vì một phân phối riêng biệt là không cần thiết. Nó được xây dựng với phần còn lại của codebase Mozilla bây giờ.

Nếu bạn tải xuống Prism (nghĩa là XulRunner), nó sẽ cung cấp cho bạn cơ sở mà bạn có thể tùy chỉnh theo nhu cầu của mình và bao gồm phiên bản mới nhất của điều khiển (trong thư mục \ Prism \ xulrunner, bạn sẽ tìm thấy mozctlx.dll).

@Greg: Trên thực tế, đây là điều khiển ActiveX. Ngẫu nhiên, tất cả điều khiển ActiveX điều khiển COM. ActiveX được xây dựng trên COM.

+0

Tôi muốn chuyển dữ liệu winform sang trình duyệt Firefox. Nó có thể được có thể thông qua OpenWebKitSharp lớp thư viện cũng có thể nó hoạt động cho FF 26.0 phiên bản –

1

tôi Belive "Gecko FX" [1] là điều bạn cần.

Để Trích dẫn từ trang web

""" GeckoFX là một hình thức Windows Control viết bằng sạch, nhận xét C# nhúng điều khiển trình duyệt Mozilla Gecko trong bất kỳ ứng dụng Windows Forms. Nó cũng chứa một mô hình lớp học đơn giản cung cấp quyền truy cập vào HTML và CSS DOM "" "

1) Tôi không thể đăng liên kết là" người dùng mới không được phép thêm siêu liên kết "Tìm kiếm" geckofx "trên mã google.

+1

Liên kết tại http://code.google.com/p/geckofx/ – malaverdiere

+0

Hoạt động phát triển vesrion của GeckoFX có sẵn tại: https://bitbucket.org/geckofx – UGEEN

9

GeckoFX không còn được cập nhật. Giải pháp thay thế là MozNet XulRunner wrapper bởi Se7en Soft. MozNet có rất nhiều tính năng mà GeckoFX không và đang được cập nhật và duy trì tích cực.

+8

EULA của MozNet mâu thuẫn với LGPL, làm cho nó bất hợp pháp. Không sử dụng nó. –

+0

tệ hơn thế, bây giờ không còn bản demo miễn phí nữa. Không có ai sẽ mua một giải pháp thay thế cho thành phần trình cắm IE mà họ có thể xác minh rằng nó có khả năng thực hiện bất kỳ tác vụ nào bạn không thể thực hiện với thành phần IE – LairdPleng

+2

Dự án phát triển tích cực của GeckoFX có sẵn tại: https: // bitbucket.org/geckofx – UGEEN

8

Tôi chỉ muốn chỉ ra, cho tất cả tìm cách nhúng Gecko vào ứng dụng của họ, rằng dự án GeckoFX dường như đã bị người sáng tạo bỏ rơi (Phần mềm Skybound). MozNET, trong khi trước đây dựa trên GeckoFX, sorta 'nhặt bóng và chạy với nó. Nó có đầy đủ khả năng in, thực hiện xem trước bản in và cho phép bạn thiết lập tất cả thông qua hộp thoại in của Windows, thậm chí - và nhiều hơn nữa là.

+0

GeckoFX đang được tích cực phát triển tại: [bitbucket] (https://bitbucket.org/geckofx) – Wayne

+0

MozNet không còn được hỗ trợ bởi tác giả. –

4

OpenWebKitSharp là trình bao bọc không hỗ trợ công cụ WebKit (hàng đêm) và rất tiên tiến. Hãy xem tại đây (phần OpenWebKitSharp): http://code.google.com/p/open-webkit-sharp/

+0

Đến nay kiểm soát WebBrowser tốt nhất cho nhu cầu không phải của IE cho .Net – Vin

+1

OpenWebkitSharp đã bị hủy bỏ và do đó vô dụng. Các lỗi hiện tại không được khắc phục nữa và người ta không thể sống với chúng. – tmighty

3

Tính đến ngày 30 tháng 10 năm 2011, có thêm thông tin mới kể từ thời điểm các bài đăng trước đó. Cụ thể, trong khi Skybound ngừng duy trì phiên bản của họ, thì có ít nhất một bản ngã nguồn mở miễn phí, tích cực, miễn phí.

Tôi đang sử dụng Hindle's fork tại BitBucket, nhờ công cụ phân tích cú pháp XpCom và tạo trình bao bọc C#, được cập nhật nhanh chóng với sự hỗ trợ cho mỗi phiên bản mới của Firefox/Gecko.

Xem this post để biết tổng quan về các lựa chọn khác.

4

Cập nhật 2016:

BrowseEmAll.Gecko

Một Net thành phần có thể được dùng để tích hợp động cơ Firefox vào ứng dụng Net của bạn.Điều này dựa trên Geckofx nhưng không giống như phiên bản hiện tại của Geckofx, điều này sẽ hoạt động với một bản phát hành Firefox bình thường. Để sử dụng Geckofx, bạn cần tự xây dựng Firefox. Một lần nữa, hỗ trợ thương mại khả dụng nhưng chính thành phần đó hoàn toàn là mã nguồn mở.

(Họ và tiết lộ: Tôi làm việc cho công ty này để lấy tất cả mọi thứ tôi nói với một hạt muối)

Các vấn đề liên quan