用Html5/CSS3做Winform,一步一步教你搭建CefSharp開發環境(附JavaScript非同步呼叫C#例子,及全部原始碼)上

來源:互聯網
上載者:User

標籤:對象   Google瀏覽器   原始碼   黃色   函數介面   web開發   瀏覽器   image   網路   

本文為雞毛巾原創,原文地址:http://www.cnblogs.com/jimaojin/p/7077131.html,轉載請註明

CefSharp說白了就是Chromium瀏覽器的嵌入式核心,我們用此開發Winform程式也就相當於在程式裡面內嵌了一個Google瀏覽器。所以H5/CSS3以及各種Web開發介面設計的優勢就可以完全發揮出來。

由於CefSharp更新及時,所以使用此瀏覽器控制項可能是對於Html5/CSS3支援最優秀的方案了。

1.首先我用的是VS2015,這裡建立一個空白解決方案。

 

2.空白解決方案建立完成,如所示

 

3.在空白解決方案裡建立一個Windows表單應用程式項目,這裡我的項目名稱為WinAPP

 

4.然後在解決方案裡建立一個ASP.Net Web應用程式項目,此項目主要用來進行頁面設計,我命名為WebRes

 

5.選擇模板為Empty,因為僅僅是編寫最基本的Html頁面和Js互動代碼,不需要服務端程式。

 

6.這是我的解決方案結構,如下所示,有兩個項目,WinAPP,和WebRes

 

7.右鍵WinAPP項目,管理Nuget程式包

 

8.輸入CefSharp,從網路安裝CefSharp.WinForms包

 

9.安裝完成之後,點擊WinAPP項目的引用,右鍵添加引用菜單,點擊瀏覽。

 

10.進入解決方案目錄,進入packages目錄。

 

11.在所示的目錄裡面選中如所示的三個dll,添加到項目引用之中。

 

12.在所示的目錄裡面選中如所示的一個dll,添加到項目引用之中。

 

13.添加完成之後,會看到dll上面有黃色驚嘆號。

 

14.在工具列上點擊如的組態管理員。

 

15.選中WinAPP項目的上下文平台,點擊建立。

 

16.這裡我的目標平台是X64,所以建立X64平台,點擊確定。

 

17.可以看到黃色驚嘆號消失了。

 

18.回到Winform項目之中,雙擊表單,編寫表單事件代碼。

 

19.添加如下using

 

20.添加如下代碼,完成瀏覽器控制項的建立與添加。

 

21.運行項目,如果沒問題的話,應該可以正確地訪問百度。

 

22.回到最開始建立的空的ASP.Net Web項目,建立一個Page檔案夾。

 

23.在Page檔案夾下建立一個名為Index.html的入口html頁面。

 

24.再建立一個Jmp.html頁面

 

25.把上一步之中建立的Jmp.html頁面拖動到Winform項目之中。

 

26.把之前ASP.Net Web項目之中的Jmp.html刪除,並且把Winform項目之中新拖動過來的Jmp.html設定成為“如果較新則複製”。

 

27.在Winform項目裡的Jmp.html裡面寫上如下跳轉代碼,確保可以跳轉到ASP.Net Web項目之中的入口頁面。

 

28.在ASP.Net Web項目之中的入口頁面上寫下一句話以方便查看是否跳轉成功。

 

29.在Winform項目的表單事件代碼裡做如下修改,瀏覽器控制項首先載入目錄下的Jmp.html檔案。

 

30.調試,可以看到,Winform程式已經載入了我們的入口頁面。

 

31.在Winform項目裡面建立一個類,這裡我命名為AsyncTest,意為非同步測試類別,也就是JavaScript非同步呼叫C#的非同步測試類別。

 

32.在非同步測試類別裡加入如下兩個using,以及如下代碼,這裡添加了一個公用的DoSomething方法,參數是兩個JavaScript回呼函數介面,此方法隨機調用成功Success或者失敗Error回呼函數。

 

33.然後在表單代碼裡建立此對象的執行個體,並且以非同步方式註冊此執行個體。

 

34.然後在ASP.Net Web項目的入口頁面裡如此調用此非同步對象的非同步方法呼叫,也就是傳入兩個回呼函數。注意這裡的doSomething是必須採用的駝峰寫法,這是之前註冊的時候預設參數設定的,也可以禁止,具體可以自己研究。

 

35.運行,非同步呼叫成功,哈哈,到這裡就結束了。

 

 

上篇教程就到這裡,下面主要是側重於一些工程的布置結構,以及一個執行個體。

 

這是本篇教程原始碼:http://pan.baidu.com/s/1dE7daF3

 

本文為雞毛巾原創,原文地址:http://www.cnblogs.com/jimaojin/p/7077131.html,轉載請註明

用Html5/CSS3做Winform,一步一步教你搭建CefSharp開發環境(附JavaScript非同步呼叫C#例子,及全部原始碼)上

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.