亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

基于Word文檔的UI設計器

系統 2091 0

????? 做管理類軟件的開發員,畫單據頁面是必須要經歷的事情.之前我做過PowerBuilder的開發,它的數據窗口雖然很強大,但是畫數據窗口確是一件非常繁瑣的事情.在眾多的UI設計器中,恐怕只有VS提供的IDE環境是最好用的了,但我們不可能讓客戶去裝個VS來畫他們所需求的單據頁面.

????? 客戶一般要實現某個單據,可能的情況是先在紙上畫好草稿,然后交給實施員或開發員,溝通確定功能之后,開發員就要開始真正建表,畫頁面了.但在這其中,如果客戶突然說要修改個字段或布局,額,后面的結果不說了,你們懂的!

????? OK,我們重新規劃一下流程,既然最容易變化的部分是單據頁面的布局,可能增加或減少欄目等.我們就把這部分單獨提取出來,直接使用Word文檔來設計單據頁面,這個思路來源于微軟的InfoPath程序,它和微軟的另一個產品SharePoint一起使用, 而且InfoPath程序還可以和Access直接交互.據說可以解決OA工作流的大部問題,額,沒有嘗試過.有興趣的朋友可以去研究一下.

????? 我們還是回到這里吧,用Word文檔如果設計單據頁面,之前有篇貼子,是使用Aspose.Word類庫來解析Word文檔,這次我們仍然使用這個控件.之前的另外一篇貼子,是WebPanel控件,它是思路是動態加載控件,控件全部取自于XML配置文件,那么我們把Word文檔的布局解析成XML配置文件就可以了.

????? 我們先看一下Word文檔,由客戶設計好的草稿,如圖-1所示

clip_image002

圖-1

?????? 一般來說,客戶是可以畫出這個效果的,當然,如果不可以,客戶可以提供紙制的草稿,由實施員來畫也可以.現在是草稿,我們來看下完成稿是什么樣子,完成稿的意思就是達到開發員可以直接開發的程度,如圖-2所示

clip_image004

圖-2

????? 我們在草稿的基礎上定義了某些規則,詳細規則如下,這樣交給開發員才有據可依.規則定義如下

????? 1. 增加控件編輯類型,如LB,TB,CL等.具體含義如下

控件關鍵字

控件編輯類型

描述

LB

Label

標簽

TB

Textbox

編輯框

CB

Dropdownlist/Combobox

下拉菜單

DT

Webdatechooser

日期控件

DTM

Webdatetimeedit

日期時間控件

RL

Radiobuttonlist

單選框列表

CL

Checkboxlist

復選框列表

BTN

Button

按鈕

GP

Goupbox/Fieldset

組合框

GRID

Gridview/Datagridview

網格控件

CO

Gridview列對象

網格控件中列對象

????? 2. 控件編輯類型后面增加[],里面包含控件名稱/標題等屬性.這里的屬性就要根據控件編輯類型自行定義了,比如:下拉菜單的屬性里定義了數據源,編輯框的屬性里定義了初始值等.定義了哪些屬性,就解析哪些屬性.

????? 3. 控件的屬性列表有順序定義,如第一個屬性定義的是控件名稱,第二個屬性定義的是標題

????? 4. 可繼續擴展,額外定義好涉及的Db表,注意:可能有多個

????? 經過上面文檔的規則定義,我們下面要做的事情就是解析了,其實解析也比較簡單,就是將上面的Table里的單元格值翻譯成XML語句,看下部分代碼截圖,如圖-3所示

clip_image006

圖-3

????? 只須按部就班的逐個單元格解析就可以了,注意:一個單元格里可能既包含單行文字,也包含子Table,也是可以解析的.大家直接看代碼就清楚了.看下整體效果圖,如圖-4和圖-5所示

clip_image008

圖-4

clip_image010

圖-5

說明

1. 在選擇Word文檔以后,直接加載到dsoframer控件中,可以再次編輯和修改.此控件的使用也有一篇貼子,可以參考

2. 左側是樹控件,是Word文檔中解析出來的控件,如Word文檔中的LB[zdmc|診斷名稱]單元格值,就是樹控件中lbl_zdmc的標簽控件

3. 右側部分是個propertyGrid控件,可以直接修改單個控件的屬性,如是否必輸,控件標題等.需要說明的是,這里修改之后,目前還沒有同步到Word文檔中.這里屬于微調,如果有改動,優先調整Word文檔

4. 如圖-5所示,是生成好的XML配置數據,這里我們還需要加工下,就是設置控件對應的Db表名稱和列名稱,這里有個關聯點,就是Db表和列的中文描述信息,與控件標題如果一致的,就可以綁定成功.當然,如果綁定不上,自己手工綁定好了

5. 最后,我們就可以將這份配置好的數據導出至XML文件,就是被WebPanel控件直接拿來使用了

6. 預覽的tab頁面就是查看生成的效果圖,就是WebPanel展示出來的效果圖,有興趣的朋友可以查看關于WebPanel控件的貼子

????? 設計器的整體功能還沒有完整想好,目前只是提供了一個思路,歡迎大家一起討論.等下次出個”增強版”的時候,就差不多了.不過,下載文件中也提供了這個版本的源碼,希望對大家有所幫助咯.還有其他一些UI設計器的代碼,一起參考下

?

示例代碼

基于Word文檔的UI設計器.Files

基于Word文檔的UI設計器


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 黄色 ed2k| 优优色综合 | 一级特黄aaa大片免费看 | 中文字幕精品一区二区三区在线 | 国产精品久久久久久福利69堂 | 暴力欧美娇小 videos | 久久国产精品男女热播 | 色婷婷精品大视频在线蜜桃视频 | 精品国产免费一区二区三区五区 | 久久精品入口麻豆 | 色综合久久最新中文字幕 | 国产成人精品精品欧美 | 伊人网狠狠干 | 亚洲综合爱爱久久网 | 这里只有精品在线播放 | 91久久国产青草亚洲 | 国产精品嘿咻嘿咻在线播放 | 99久久精彩视频 | 亚洲视频在线网站 | 国产精品久久久久久免费 | 国产成人精品免费视频大 | 欧美日韩免费播放一区二区 | 中文国产欧美在线观看 | 亚洲国产中文在线 | 无码免费一区二区三区免费播放 | 狠狠狠色丁香婷婷综合久久五月 | 久久久久久免费观看 | 久久精品国产欧美日韩亚洲 | 精品国产日韩亚洲一区在线 | 亚欧精品在线观看 | 999久久66久6只有精品 | 好吊妞人成免费视频观看 | 久久久亚洲精品视频 | 极品美女一级毛片免费 | 久久九九有精品国产23百花影院 | www.777色| 久久精品视频播放 | 国产亚洲精品久久 | 亚洲第一伊人 | 四虎国产成人亚洲精品 | 在线观看视频91 |