版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第9章 ASP.NET中的站點(diǎn)導(dǎo)航技術(shù),9.1 站點(diǎn)地圖,站點(diǎn)地圖,由其名稱不難想象,其功能是用于定于站點(diǎn)結(jié)構(gòu)。早些年,一些大中型的網(wǎng)站為了讓用戶便于找到合適的網(wǎng)頁,特別定制了一些站點(diǎn)目錄文件,稱之為站點(diǎn)地圖。在ASP.NET中,微軟為了簡化創(chuàng)建站點(diǎn)地圖的工作,提供了一套用于導(dǎo)航的站點(diǎn)地圖技術(shù)。 ASP.NET中的站點(diǎn)地圖導(dǎo)航技術(shù)由如下的三個(gè)組件組成: 一個(gè)用于定義站點(diǎn)結(jié)構(gòu)的XML文件,又稱為站點(diǎn)地圖文件。 用來綁定到XML文件的站點(diǎn)地圖SiteMapDataSource數(shù)據(jù)源控件。 用于顯示站點(diǎn)地圖的導(dǎo)航控件,9.1.1 定義站點(diǎn)地圖文件,站點(diǎn)地圖文件是一個(gè)名為Web.Sitemap的XML
2、文件,在詳細(xì)討論該文件細(xì)節(jié)前,先來了解一下ASP.NET站點(diǎn)地圖的基本原理,9.1.2 使用SiteMapPath控件,在上一小節(jié)中己經(jīng)定義了一個(gè)站點(diǎn)導(dǎo)航文件,下面將演示如何使用SiteMapPath控件來顯示站點(diǎn)的導(dǎo)航路徑。SiteMapPath是一個(gè)非常方便的控件,可以根據(jù)在Web.sitemap定義的數(shù)據(jù)自動的顯示網(wǎng)站的路徑,并能確定當(dāng)前頁的位置,可以自定義導(dǎo)航的外觀,9.1.3 SiteMap類,使用SiteMapPath控件,開發(fā)人員可以不需要編寫代碼就可以在頁面中添加站點(diǎn)導(dǎo)航,也可以對站點(diǎn)地圖進(jìn)行編程操作,ASP.NET公開了一個(gè)反映站點(diǎn)地圖結(jié)構(gòu)的靜態(tài)的SiteMap對象,該對象公
3、開SiteMapNode對象的集合,用于表示站點(diǎn)中的每個(gè)節(jié)點(diǎn),9.1.4 URL地址映射,ASP.NET提供了URL地址映射的功能,盡管功能非常有限,但是還是可以簡化開發(fā)人員編寫自定義地址映射的麻煩。一些情況下,開發(fā)人員可能希望隱藏真實(shí)的網(wǎng)頁地址,特別是一些保密性要求強(qiáng)的網(wǎng)站,使用地址映射就很有必要。另外一些情況就是開發(fā)人員希望保持網(wǎng)頁的友好性,為用戶提供友好助記的URL,以便于訪問能很輕易的記住所到訪過的網(wǎng)頁,9.2 TreeView控件,TreeView控件的應(yīng)用可以說是相當(dāng)?shù)钠占埃總€(gè)開發(fā)人員,每個(gè)接觸電腦的用戶,基本上每天都有和TreeView控件打交道。這所以這么說,是因?yàn)閃indo
4、ws的資源管理器左側(cè)就是一個(gè)相當(dāng)經(jīng)典的TreeView控件的應(yīng)用,只要使用電腦,就不大可能不和資源管理器打交道,9.2.1 使用TreeView控件,為了演示使用TreeView控件,本節(jié)創(chuàng)建一個(gè)名為TreeViewDemo的ASP.NET網(wǎng)站。進(jìn)入Default.aspx設(shè)計(jì)視圖,從工具箱的導(dǎo)航欄中拖一個(gè)TreeView控件到設(shè)計(jì)視圖,VS2010會自動彈出TreeView控件的任務(wù)窗口,在該窗口中提供了幾個(gè)功能可以簡化創(chuàng)建TreeView控件的過程,9.2.2 以編程的方式添加節(jié)點(diǎn),使用節(jié)點(diǎn)編輯器以靜態(tài)的方式添加節(jié)點(diǎn)雖然好用,但是許多情況下樹狀數(shù)據(jù)是動態(tài)的,需要以編程的方式進(jìn)行添加。Tre
5、eView控件提供了一個(gè)Nodes屬性,該屬性表示TreeView控件的節(jié)點(diǎn)的集合。每個(gè)TreeNode對象也具有一個(gè)ChildNodes屬性,表示當(dāng)前節(jié)點(diǎn)的子節(jié)點(diǎn)的集合,9.2.3 使用TreeView控件導(dǎo)航,TreeView控件可以十分方便的顯示站點(diǎn)地圖數(shù)據(jù),比如可以通過編程的方式動態(tài)的加載站點(diǎn)地圖數(shù)據(jù),9.2.4 綁定到XML文件,TreeView具有顯示層次結(jié)構(gòu)數(shù)據(jù)的優(yōu)勢,而開發(fā)人員通常使用XML文件來保存層次結(jié)構(gòu)的數(shù)據(jù)。TreeView控件通過與XmlDataSource控件的結(jié)合,使綁定XML文件變得非常簡單,9.2.5 按需加載節(jié)點(diǎn),如果要加載到TreeView控件中的數(shù)據(jù)量非
6、常大,一次性加載將顯著增加服務(wù)器端的負(fù)載和客戶端內(nèi)存的占用量,并且會造成請求的延遲。Treeview控件提供了按需加載的特性解決這個(gè)問題。在首次加載時(shí),TreeView只顯示頂級節(jié)點(diǎn)的少量數(shù)據(jù),當(dāng)用戶點(diǎn)擊TreeView中的展開節(jié)點(diǎn)圖標(biāo)時(shí),將再次從服務(wù)器端加載所需要的數(shù)據(jù),9.2.6 帶復(fù)選框的TreeView控件,當(dāng)用戶在TreeView中單擊一項(xiàng)時(shí),將會觸發(fā)TreeView控件的SelectedNodeChanged事件,9.3 Menu控件,ASP.NET提供了另一個(gè)重量級的導(dǎo)航控件Menu,使用該控件,開發(fā)人員可以在網(wǎng)頁上模擬Windows的菜單導(dǎo)航效果。ASP.NET的Menu控件可
7、以呈現(xiàn)兩種模式: 靜態(tài)模式:Menu控件的菜單項(xiàng)是完全展開的,用戶可以單擊菜單任何菜單項(xiàng)。 動態(tài)模式:默認(rèn)只顯示部分內(nèi)容,當(dāng)用戶移動鼠標(biāo)到靜態(tài)內(nèi)容項(xiàng)上時(shí),則彈出子菜單項(xiàng),類似于Windows菜單。 本節(jié)將詳細(xì)介紹該控件的使用方式,9.3.1 使用Menu控件,VS2010同樣對Menu控件提供了強(qiáng)大的設(shè)計(jì)時(shí)支持,下面新建一個(gè)MenuDemo的ASP.NET網(wǎng)站,按如下所示的步驟來使用這個(gè)功能強(qiáng)大的控件,9.3.2 以編程的方式添加菜單項(xiàng),Menu控件提供了一個(gè)Items的集合屬性,這是一個(gè)MenuItemCollection集合類型的屬性,可以向該屬性添加菜單項(xiàng)來實(shí)現(xiàn)動態(tài)添加菜單項(xiàng)的效果,9.
8、3.3 使用Menu控件導(dǎo)航,Menu控件作為一種導(dǎo)航控件,同樣的可以輕松的綁定到SiteMapDataSource控件來實(shí)現(xiàn)站點(diǎn)導(dǎo)航,9.3.4 一個(gè)站點(diǎn)地圖示例,下面舉一個(gè)站點(diǎn)地圖的示例,該示例使用了兩個(gè)Menu控件,一個(gè)Menu控件用于顯示頂層菜單,當(dāng)單擊頂層菜單中的不同的菜單項(xiàng)后,另一個(gè)菜單項(xiàng)顯示其相應(yīng)的子菜單,9.3.5 綁定到XML文件,Menu控件也可以與XML文件進(jìn)行輕松的綁定,通過將Menu控件的DataSourceID屬性指定為XmlDataSource控件即可,9.3.6 Menu控件樣式,Menu控件與TreeView控件類似,提供了大量的外觀控制項(xiàng),Menu控件具有一
9、個(gè)MenuItemStyle菜單樣式,該樣式定義了與菜單項(xiàng)相關(guān)的屬性比如ItemSpaceing、HorizontalPadding和VerticalPadding。用戶可以為不同層次的菜單定義不同的樣式,由于Menu控件具有兩種菜單模式,因此分別提供了對這兩種模式的樣式定義,9.3.7 為Menu控件應(yīng)用模板,Menu控件也支持使用模板來定義其外觀,Menu控件具有兩種類型的模板: StaticItemTemplate模板:包含靜態(tài)菜單自定義呈現(xiàn)內(nèi)容的模板 DynamicItemTemplate模板:包含動態(tài)菜單自定義呈現(xiàn)內(nèi)容的模板,9.4 小結(jié),本節(jié)介紹了ASP.NET的站點(diǎn)導(dǎo)航技術(shù),首先介紹了站點(diǎn)地圖,如何定義站點(diǎn)地圖文件使用SiteMapPath顯示站點(diǎn)地圖以及SiteMap類,并簡單的介紹了一下ASP.NET內(nèi)置的URL地址映射功能來提供友好的URL地址名稱,9.5 常見面試題,9.5.1 說出3種以上能在ASP.NET中實(shí)現(xiàn)導(dǎo)航的控件 用ASP.NET實(shí)現(xiàn)網(wǎng)站非常方便,就在于它提供了很多控件,可以方便的設(shè)計(jì)網(wǎng)站中的各種功能,如樹、菜單等。本章就講解了3種導(dǎo)航控件: SiteMapPath地圖控件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度林業(yè)用地承包經(jīng)營權(quán)租賃合同范本2篇
- 2025年化妝品原料質(zhì)量追溯體系建設(shè)合同3篇
- 綠色金融在氣候科技中的未來角色
- 2025年度環(huán)保產(chǎn)業(yè)園投資合作合同集錦3篇
- 2025年度女方離婚協(xié)議履行義務(wù)及違約賠償合同-@-1
- 課題申報(bào)參考:馬克思主義與儒釋道思想融創(chuàng)的哲學(xué)范式研究
- 2025年度個(gè)人二手車交易合同模板全新升級版
- 《短視頻編劇:選題構(gòu)想+腳本制作+劇本策劃+鏡頭拍攝》課件匯 第1-5章 選題方向:從賬號定位出發(fā) - 了解劇本:創(chuàng)作優(yōu)劇本的基礎(chǔ)
- 黑龍江省高三上學(xué)期開學(xué)考試語文試題(含答案)
- 二零二五版門衛(wèi)室節(jié)能環(huán)保改造合同4篇
- 新聞記者證600道考試題-附標(biāo)準(zhǔn)答案
- 變壓器搬遷施工方案
- 單位轉(zhuǎn)賬個(gè)人合同模板
- 八年級語文下冊 成語故事 第十五課 諱疾忌醫(yī) 第六課時(shí) 口語交際教案 新教版(漢語)
- 中考語文二輪復(fù)習(xí):記敘文閱讀物象的作用(含練習(xí)題及答案)
- 老年外科患者圍手術(shù)期營養(yǎng)支持中國專家共識(2024版)
- 2024年1月高考適應(yīng)性測試“九省聯(lián)考”數(shù)學(xué) 試題(學(xué)生版+解析版)
- (正式版)JBT 11270-2024 立體倉庫組合式鋼結(jié)構(gòu)貨架技術(shù)規(guī)范
- EPC項(xiàng)目采購階段質(zhì)量保證措施
- T-NAHIEM 101-2023 急診科建設(shè)與設(shè)備配置標(biāo)準(zhǔn)
- 針灸與按摩綜合療法
評論
0/150
提交評論