DSkin 的WebUI開發(fā)模式介紹,Html快速開發(fā)Winform的UI
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
新版WebUI開發(fā)模式采用MiniBlink內(nèi)核,這個(gè)內(nèi)核功能更完善,dll壓縮之后才5M,而且提供開發(fā)者功能,內(nèi)核還在更新中,而且是開源項(xiàng)目:https://github.com/weolar/miniblink49 如果是內(nèi)核方面的問(wèn)題可以到 http://miniblink.net/ 提問(wèn)! 通過(guò)Html來(lái)開發(fā)UI可以利用海量的前端資源,然后配合C#優(yōu)美的語(yǔ)法加無(wú)敵的VS來(lái)開發(fā),簡(jiǎn)直完美! html和C#類對(duì)應(yīng),就像WPF或者WebForm那樣。 開始開發(fā) 新建X86的Winform項(xiàng)目,窗體繼承改成DSkin.Forms.MiniBlinkForm
期望大小乘以ZoomFactor,是為了適應(yīng)DPI縮放;把a(bǔ)pp.manifest中的這段DPI代碼取消注釋
程序集里的資源Url寫法是res://開頭的 res://WebUIDemo/Views/index.html res://程序集名/若干文件夾/文件名 區(qū)分大小寫
Html頁(yè)面和C#類綁定,頁(yè)面和類的名稱要一樣,Html在哪個(gè)文件夾無(wú)所謂,區(qū)分大小寫, 支持主頁(yè)面和框架頁(yè)面的綁定
類繼承 DSkin.Forms.MiniBlinkPage
C#屬性和頁(yè)面雙向綁定,依賴Vue,支持簡(jiǎn)單屬性的雙向綁定,和集合的單向綁定,復(fù)雜屬性請(qǐng)用Json字符串 JS中也可以用Get(“屬性名”); Set(“屬性名”,值) 訪問(wèn)和設(shè)置屬性值,可以不需要Vue
頁(yè)面設(shè)置一個(gè)綁定的全局ID,默認(rèn)是page,如果想改成其他的,頁(yè)面和C#類需要一起改,在構(gòu)造函數(shù)里設(shè)置。這個(gè)ID和Vue綁定ID是一致的!
頁(yè)面里的 {{Text}} 就是綁定到C#里定義的Text的屬性了 綁定操作寫好之后,Js中就可以操作這個(gè)Vue綁定對(duì)象了,對(duì)象名就是那個(gè)Id,默認(rèn)為page Js中的高級(jí)操作可以到Vue官網(wǎng)查看教程 https://cn.vuejs.org/v2/guide/ 比如Js中調(diào)用 page.Text=’這么牛逼!’; 這個(gè)值就會(huì)更新到C#類Text屬性和頁(yè)面 Js綁定C#方法,方法上面加JSFunction,方法參數(shù)只支持簡(jiǎn)單的數(shù)據(jù)類型,數(shù)量和類型要和JS調(diào)用的對(duì)應(yīng)
JS同步調(diào)用C#方法:參數(shù)對(duì)應(yīng),直接調(diào)用就是同步調(diào)用
JS異步調(diào)用C#方法:前面參數(shù)對(duì)應(yīng),最后加個(gè)包含一個(gè)參數(shù)的回調(diào)函數(shù)
如果頁(yè)面里引用了JQuery,你還可以用C#封裝的JQuery調(diào)用,方便操作Dom元素
C#直接調(diào)用JS: InvokeJS("alert('test')"); 最終的Demo效果,是不是很簡(jiǎn)單,方便!
簽名:<-CPF C# 跨平臺(tái)桌面UI框架,支持Windows,Mac,Linux,包括XP,國(guó)產(chǎn)麒麟Linux等等->
轉(zhuǎn)載:https://www.cnblogs.com/dskin/p/8746502.html 該文章在 2024/1/23 9:41:47 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |