轉(zhuǎn)帖|其它|編輯:郝浩|2011-09-22 13:53:36.000|閱讀 593 次
概述:關(guān)于菜單這個(gè)話題我想應(yīng)該是不講則懂,所以本文不會(huì)多講這些概念,則重關(guān)注RadControls控件中的RadMenu控件的使用,結(jié)合數(shù)據(jù)庫(kù)來開發(fā)一個(gè)系統(tǒng)菜單。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
關(guān)于菜單這個(gè)話題我想應(yīng)該是不講則懂,所以本文不會(huì)多講這些概念,則重關(guān)注RadControls控件中的RadMenu控件的使用,結(jié)合數(shù)據(jù)庫(kù)來開發(fā)一個(gè)系統(tǒng)菜單。
一、數(shù)據(jù)庫(kù)設(shè)計(jì)
這里我就使用Access作為示例數(shù)據(jù)庫(kù),詳細(xì)見下圖:
表字段依次為:自動(dòng)編號(hào)、菜單編碼、菜單名稱、請(qǐng)求地址、菜單上顯示的圖片地址、快捷鍵(RadMenu控件支持)、菜單順序、菜單級(jí)限、是否為末級(jí)和父菜單編碼。 整個(gè)設(shè)計(jì)中主要以菜單編碼作為關(guān)聯(lián)依據(jù)。
二、注冊(cè)控件及使用控件皮膚
我們可以將控件添加到工具箱直接拖拽到aspx頁面上就OK,隨后可以在html視圖下看到如下注冊(cè)命令:
要使用RadControls提供的皮膚功能很方便,從安裝目錄下將皮膚文件復(fù)制到項(xiàng)目中,然后在控件上直接選擇所需要的皮膚就OK。下圖為RadMenu選擇皮膚截圖:
三、編碼實(shí)現(xiàn)讀取數(shù)據(jù)
示例使用Access數(shù)據(jù)庫(kù),簡(jiǎn)單配置了幾條數(shù)據(jù),通過ADO.NET讀出來這個(gè)很簡(jiǎn)單,這里就不多說。菜單下的子菜單,以及下一級(jí)子菜單,凡是菜單都有可能會(huì)有這種情況,這里遞歸生成就OK。相關(guān)代碼如下:
四、生成菜單項(xiàng)的準(zhǔn)備
菜單一般都是公用的(不考慮用戶權(quán)限相關(guān)的控制),我們可以把它開發(fā)成為一個(gè)公共的部分。本示例使用母版頁來做菜單,新建母版頁:
在此母版頁里加入RadMenu控件,并設(shè)置相應(yīng)的皮膚就OK。如下代碼塊:
五、根據(jù)數(shù)據(jù)庫(kù)數(shù)據(jù)生成菜單項(xiàng)
現(xiàn)在就差最后一步了,根據(jù)數(shù)據(jù)庫(kù)里讀取的數(shù)據(jù)生成菜單項(xiàng)。由于菜單下會(huì)有子菜單情況,示例中將菜單項(xiàng)生成分兩步來處理,詳細(xì)見如下代碼:
除了上面的方法,還有一個(gè)構(gòu)建子菜單的方法InitSubMenu(),如下代碼塊:
六、展現(xiàn)RadMenu風(fēng)采
通過上面一步步的開發(fā),現(xiàn)在終于可以一覽RadMenu的風(fēng)采了。通過上面建立的母版頁建立一內(nèi)容頁,直接運(yùn)行內(nèi)容頁就可以看到效果了。示例中我使用了三種皮膚:Web2.0,WebBlue和Vista,下面是此三種皮膚的運(yùn)行截圖:
七、其他
出了皮膚是一大特色外,RadMenu還提供了很多客戶端事件,我們利用這些API可以很方便在在客戶端通過JavaScript動(dòng)態(tài)的來創(chuàng)建、添加、刪除菜單項(xiàng),如下屬性截圖:
尤其是在AJAX普遍使用的今天,無刷新的應(yīng)用開發(fā)越來越普遍,RadMenu為我們提供了比較完美的菜單解決方案。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載